jquery:元素克隆之后,input checkbox不能打钩,为何?

源码

<c:forEach items="${page.list}" var="item">
    <tr align="center" id="tr${item.id}">
                        <td>
                            <label class="checkbox">
                                <input type="checkbox" class="checkAll" name="checkAll" id="check${item.id}" value="${item.id}" />
                            </label>
                        </td>

clipboard.png

clipboard.png

如上图,第一行是复制的

  var newRow = $("body table tbody tr").last().clone(true);
  

只是改了一下id和value
但是打钩打不了
页面里没有写jquery去控制打钩
请问可能的原因是什么?

clone(true)的结果好像是只能影响 <tr>元素,点击checkbox后,<tr>元素多了一个class="active",但是<tr>的子元素没反应。

阅读 3.7k
3 个回答

看一下是不是z-index的问题

看了一下文档,clone方法默认是不复制事件处理的,但是这种堆叠了的就不太确定了,要不看看是不是绑的什么方法导致的。

试试做静态绑定,但是打钩要使用prop()才会生效.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题