我正在使用jQuery将Ajax内容加载到页面上。但是,尝试使用jQuery的.remove()函数似乎无法删除动态加载的元素。

我的示例函数:

function deletePerson(personID){
    if (confirm("Are you sure you want to permanently delete this person?\nYou cannot undo this action.")){
      $.post("ajax/personsDelete.php", { personNo: personID },
          function(data){
              $('#person' + personID).remove();
              alert("Response: " + data);
          });
    }
}


如何使用jQuery删除动态加载的元素?

最佳答案

更改选择器的上下文以查看响应,并添加,data

function deletePerson(personID){
    if (confirm("Are you sure you want to permanently delete this person?\nYou cannot undo this action.")){
      $.post("ajax/personsDelete.php", { personNo: personID },
          function(data){
              $('#person' + personID, data).remove();
              alert("Response: " + data);
          });
    }
}


由于尚未将其添加到文档中,因此您正在调用的默认选择器找不到它:
$('#person' + personID)$('#person' + personID, document)相同

关于jquery - jQuery:删除通过ajax加载的DOM元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2275548/

10-13 01:28