我有一个使用C#MVC3和部分视图开发的页面。 分页是使用部分视图和 AJAX 实现的。生成的页面将有一个每个记录的复选框。这个想法是让用户选中他们想要打印的每个记录旁边的框。当他们单击页面上的“打印”按钮时,将仅打印那些选定的记录。为了实现这一点,我将所选记录移动到布局页面中的<div>
,然后单击打印按钮,我将这些复制的记录用于打印。
I have one layaout page : _layout.cshtml
View : DetailedReport.cshtml
Partical View : `PVdetailedReport.cshtml`
DetailedReport.cshtml
和PVdetailedReport.cshtml
非常相似。
我第一次使用DetailedReport.cshtml
(即第1页)。对于其余页面,因为它们是通过ajax调用呈现的,所以我使用的是PVdetailedReport.cshtml
。
当我勾选复选框时,将所选元素移动到<div>
,适用于第一页但适用于后续页面,这些页面通过 AJAX 和局部视图呈现,所选元素的移动无效。
以下是将所选元素移动到<div>
$(":checkbox").on('change', function () {
if ($(this).hasClass('containerToCopy')) {
if ($(this).is(':checked')) {
// If a listing is selected then move it to divToPrintContainer, which is buried inside _Layout.cshtml
$(this).closest('table').clone().appendTo("#divToPrintContainer");
} else {
// If a listing is UNselected then remove it from divToPrintContainer
$('#divToPrintContainer').find("[id='" + "tbl-" + $(this).attr('id') + "']").remove();
}
}
});
答案 0 :(得分:2)
尝试委派事件监听器
$(document).on('change', ":checkbox", function () { ... });