我正在尝试在AJAX PHP脚本完成时删除父div。问题是你在php Script是jQuery时无法删除div。
有人知道我的代码中的错误以及为什么我无法使用我提供的方法删除想要的DIV吗?
这是代码:
HTML:
<div id="newTask">
<input type="hidden" id="taskID" 1="" name="taskID" value="39">
<input type="text" id="taskName1" name="taskName1" value="12">
<span class="remove" onclick="removeDIVS(39);"></span>
</div>
JS:
function removeDIVS(currentID){
$.ajax({
url: 'scripts/removeTask.php',
type: 'post',
data: 'id='+currentID,
success: function(data, status) {
if(data == "OK") {
$(this).parent().remove();
}
else{
$('#TaskResult').html(data);
}
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
}); // end ajax call
}
答案 0 :(得分:3)
尝试:
HTML:
<div id="newTask">
<input type="hidden" id="taskID" 1="" name="taskID" value="39">
<input type="text" id="taskName1" name="taskName1" value="12">
<span class="remove" data-myid="39"></span>
</div>
JS:
$(".remove").click(function(){
var currentID = $(this).data('myid');
var parenID = $(this).parent().attr('id');
$.ajax({
url: 'scripts/removeTask.php',
type: 'post',
data: 'id='+currentID,
success: function(data, status) {
if(data == "OK") {
$("#"+parenID).remove();
}
else{
$('#TaskResult').html(data);
}
},
error: function(xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
}
}); // end ajax call
})
答案 1 :(得分:1)
使用
$("#newTask").remove();
而不是
$(this).parent().remove();
因为$(this)
不符合您的期望。