动态创建的html表行上的单行选择

我创建了一个动态表。该html表具有数据绑定功能,并从数据库中获取所有数据。我有一个使用jquery的单击行选择功能,但我认为它仅在静态表(硬编码)上执行。有人可以帮我在动态创建的html表行上进行单击时的单行选择。(应该是单行选择,这意味着当用户单击其他表行时,应取消选择最后选择的行。)>

HTML

<table id="tblCases">
<thead > 
<tr>
<th>CASE KEY</th>
<th>DEPARTMENT CASE #</th>
<th>DEPARTMENT</th>
<th>CHARGE</th>
<th>LAB CASE #</th>
<th>INCIDENT REPORT DATE</th>
</tr>
</thead> 
<tbody></tbody>
</table>

CSS

#tblCases tr.selectedRow{background-color: #56bff0;}

AJAX

$.ajax({
    url: 'E****_L******_AjaxWS.asmx/GetRecentCases',dataType: "json",method: 'post',success: function (data) {
        var recentcasesTable = $('#tblCases tbody');
        recentcasesTable.empty();
        $(data).each(function (index,rcases) {
            recentcasesTable.append('<tr><td>' + rcases.CASE_KEY + '</td><td>'
                        + rcases.DEPARTMENT_CASE_NUMber + '</td><td>' + rcases.DEPARTMENT_NAME + '</td><td>' + rcases.CHARGE
                        + '</td><td>' + rcases.LAB_CASE + '</td><td>' + rcases.OFFENSE_DATE + '</td></tr>');
        });
    },error: function (err) {
        alert(err);
    }
});

JQUERY(我的单击行选择,仅在静态表上有效)

$('#tblCases tr').click(function () {
       $('#tblCases tr').removeclass('selectedRow');
       $(this).addClass('selectedRow');
   })
daibin0715 回答:动态创建的html表行上的单行选择

在添加新行之后,应该在ajax成功回调中声明“单击”处理程序。这样您的新行还将附加了点击处理程序。请确保您将以前的点击处理程序设为“ off”,以免重复处理程序。

$.ajax({
url: 'E****_L******_AjaxWS.asmx/GetRecentCases',dataType: "json",method: 'post',success: function (data) {
    var recentcasesTable = $('#tblCases tbody');
    recentcasesTable.empty();
    $(data).each(function (index,rcases) {
        recentcasesTable.append('<tr><td>' + rcases.CASE_KEY + '</td><td>'
                    + rcases.DEPARTMENT_CASE_NUMBER + '</td><td>' + rcases.DEPARTMENT_NAME + '</td><td>' + rcases.CHARGE
                    + '</td><td>' + rcases.LAB_CASE + '</td><td>' + rcases.OFFENSE_DATE + '</td></tr>');           
    });

   $('#tblCases tr').off("click").on("click",function () {
     $('#tblCases tr').removeClass('selectedRow');
     $(this).addClass('selectedRow');
   });

},error: function (err) {
    alert(err);
}
});
,

在将新行追加到表中之后,您应该重新绑定jQuery表行

本文链接:https://www.f2er.com/3162418.html

大家都在问