1
   $('table tbody tr').click(function add_div() {
    if ($('#dynEdit').length > 0) {
        $('#dynEdit').remove();
        return false;
    }
    $(this).after('<div id="dynEdit"></div>');
    $.ajax(
        {
            url: '/TransJobAddress/EditAddress',
            datatype:'html',
            success: function(data,textStatus,jqXHR)
            {
                $('#dynEdit').html(data);
            },
            error:function( jqXHR, textStatus,errorThrown)
            {
                alert('The server saying:' + errorThrown);

            }
        });

});
$('#close').click(function closediv() {
    $('#addrIndex').load('/TransJobAddress/ListAddresses #addrIndex table');

});

我在 mvc 项目中使用它

通过单击一行,我可以使用 ajax 插入编辑页面,这没关系。当使用新记录按钮插入新记录时,我将 div 标签中的表格列表替换为 Id="addrIndex"

单击新记录框上的取消按钮后,它将返回表列表。如果我第二次再次单击任何行,则没有任何效果。在取消新记录后,如何再次编辑一行。

4

3 回答 3

1

从绑定时存在的父级委托您的事件处理程序

$(document.body).on('click','tr', function(e) {//...});
于 2013-11-02T07:18:25.577 回答
1

问题是当 HTML 被替换时,元素失去了它的绑定。尝试在您的 div 中绑定点击。

$("#addrIndex").on("click", "table tbody tr", function () {

});
于 2013-11-02T07:20:19.480 回答
1

绑定点击#addrIndex jQuery on

$("#addrIndex").on('click', 'table tbody tr', function(){
   ///your code here
});
于 2013-11-02T07:22:27.287 回答