jQuery .click()函数只能使用$(window).load()

时间:2015-05-19 13:08:05

标签: jquery ajax

我一直在尝试使用删除按钮创建一个列表来删除元素(使用ajax)。 当元素被删除时,我使用$("#tableId").load(window.load + " #tableId);更新我的表,以便删除的元素消失,这在第一次工作正常,但是当我第一次删除元素并加载#tableId时,我可以&#39 ; t删除更多项目。

这是脚本:

$(".remove").click(function(){
    $("#message").show();
    $("#message").html("Entro!");
    var id = $(this).attr("value");
    var href = $(this).attr("href");
    var tipo = href.replace(/([^a-zA-Z0-9])+/g, '');
    $.ajax({
        url: 'inc/checkRemoverObjeto.php',
        type: "POST",
        data: 'tipo='+tipo+'&&id='+id,
        success: function(response){
            $("#message").show();
            $("#message").html(response);

            $("#tableId").load(window.location + " #tableId");
        }
    });
    return false;
});

我搜索了但我无法找到解决方案。 谢谢!

2 个答案:

答案 0 :(得分:3)

您需要使用typehtml = '<select id="select"><option value="first">All </option>'; $.ajax({ type: 'POST', url: 'web service url', data: "web service parameters", dataType: 'xml', success: function(response) { $(response).find('IssueType').each(function() { var namei = $(this).find('Name').text(); var id = $(this).find('Id').text(); typehtml += '<option value="' + id + '" >' + namei + '</option>'; }); typehtml += '</select>'; document.getElementById("typediv").innerHTML = typehtml; //here you have to assign the function $("#select").change(function() { //code goes here.. }); }, error: function(error) { alert(error); } });使用事件委派。这会将事件应用于on内的动态添加元素。

#tableId

答案 1 :(得分:2)

将事件委派与documenton()一起使用

$(document).on('click', '.remove', function(){...});

这会将事件处理程序附加到所有当前和未来的.remove元素