sanyue_ 2017-08-23 08:49 采纳率: 100%
浏览 2158
已采纳

用superTable.js锁定了表头和前两列,克隆了一个table,js失效怎么解决

图片说明

这是锁定前的效果,点击图标可以操作。锁定之后点击图标这个操作框就不会出来。

js,调试可以进去,控制的好像是克隆前的点击事件,js里面应该怎么写来控制现在页面
的点击事件

        <script type="text/javascript">
           function GoodsHide(obj) {
               document.getElementById(obj.id).style.display = "none";
           }
           function Part_Show(obj) {
               var Partid = obj.id.replace("ImgPart_", "");
               document.getElementById("BtnPart_" + Partid).style.display = "block";
               document.getElementById("BtnPart_" + Partid).style.zIndex = "999";
           }
           function GoodsNth(obj) {
               document.getElementById(obj.id).style.display = "block";
           }
     </script> 

代码

     <td class="center"><%# Eval("RFQStatus").ToString().ToLower()=="false"?"<span style='color:red;'>未报</span>":"<span style='color:#8d8d8d;'>已报</span>" %>
        <asp:Panel ID="panOperation" runat="server">
        <div class="checkImg"><img alt="" src="/Images/icon/setting_nostock.png" onclick="Part_Show(this)" id="ImgPart_<%# Eval("ID") %>" />
            <div class="Goodsbtn" id="BtnPart_<%# Eval("ID") %>" onmouseout="GoodsHide(this)" onmouseover="GoodsNth(this)">
                <asp:Button ID="btnNoGoods" CssClass="btnstys" runat="server" Text="无货" />
                <asp:Button ID="btnQueGoods" CssClass="btnstys" runat="server" Text="缺货" />
                <asp:Button ID="btnReturnSea" CssClass="btnstys" runat="server" Text="退回公海库" />
                <asp:Button ID="btnPartIsWrong" CssClass="btnstys" runat="server" Text="型号有误" />
            </div>
        </div>
       </asp:Panel> 
    </td> 

请前辈们解答,谢谢了

  • 写回答

2条回答 默认 最新

  • Go 旅城通票 2017-08-23 10:18
    关注

    id重复了,要通过dom关系获取,要不document.getElementById得到的是原始的table的,被fixed那列的占据了,用jquery使用属性选择器就行。而且你事件有问题,mouseout移动到子元素也会触发的,mouseover就没必要了

      <div class="Goodsbtn" id="BtnPart_<%# Eval("ID") %>" onmouseout="GoodsHide(this,event)">
    
        function GoodsHide(obj, e) {
            var o = e.toElement || e.relatedTarget;
            if ($.contains(obj, o)) return;//移动到子元素推出
            $('[id="' + obj.id + '"]').hide()
        }
        function Part_Show(obj) {
            var Partid = obj.id.replace("ImgPart_", "");
            $('[id="BtnPart_' + Partid + '"]').show().css('z-index', 999);
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建