0

我在li从其父项中删除列表项时遇到问题ul。通常我会做以下事情:

$(this).closest('li').remove();

或者

$(this).parent().remove();

由于列表项通过表单附加到页面,我认为this使用存在问题。

我的附加代码li如下:

$(document).on('click', '.add_section', function(){
var section_title=$('.section').val();
var menu_type=$('.menu_type_sel').val();
var rest_id=$('body').data('rest_id');
var menu_id=$('body').data('menu_id');
var error=false;
if(section_title=="")
{
    $('.error_box13').eq(2).html("<p>Please Add a Section Title</p>");
    $('.error_box13').eq(2).show(300);
    error=true;
    return;
}

var data="section="+section_title+"&rest_id="+rest_id+"&menu_id="+menu_id+"&menu_type="+menu_type;

$.ajax({
    type:"POST",
    url:"includes/write_section.php",
    data:data,
    success:function(html){
        if(html!="x")
        {
        var app_section="";
        app_section="<li class='hover' id='menu_"+html+"'>"+section_title+" <a href='javascript:void(0);' class='delete_section' data-id='"+html+"'>[x]</a></li>";
        $(app_section).appendTo('#sortme');
        $('.section').val("");
        }
    }
});//end ajax
});

要删除li到目前为止我有:

 $(document).on('click', '.delete_section', function(){
var delete_id=$(this).data('id');
var data="id="+delete_id;
alert(data);
$.ajax({
    type:"POST",
    url:"includes/delete_section",
    data:data,
    context:this,
    success:function(html){
        if(html!="X")
        {
            $(this).closest('li').remove();
            return false;
        }
    }
});//end ajax
});

我已添加该context:位作为试用版,但这仍然不会删除li.

4

2 回答 2

0

试试老var that = this把戏。

$(document).on('click', '.delete_section', function(){
    var delete_id=$(this).data('id');
    var data="id="+delete_id;
    var that = this;
    $.ajax({
        type:"POST",
        url:"includes/delete_section",
        data:data,
        context:this,
        success:function(html){
            if(html!="X")
            {
                $(that).closest('li').remove();
                return false;
            }
        }
    });//end ajax
});
于 2013-03-05T12:43:20.430 回答
0

刚刚注意到我的愚蠢错误:

该网址缺少其 .php,因此没有返回代码。

于 2013-03-05T12:51:19.020 回答