失踪 ;在声明之前:$(this).closest('tr')。find('。tableRow'){\ n

时间:2010-11-12 13:25:21

标签: jquery find this

$('.removeItem').live('click',function(){                                       
                        var postData = {};
                        $(this).closest('tr').find('.tableRow'){
                            var keyPrefix = 'data[' + index + ']';
                            postData[keyPrefix + '[index]'] = $(this).closest('tr').find('.row_id').text();
                            postData['data['+ index +'][order_id]'] = $('#order_id').text();
                        };

我不确定它是否显而易见我想做什么,但是有人能发现我哪里出错吗?

编辑:

完全是我的错,在我的原帖中有点误导,这是我的完整代码:

$('.removeItem').live('click',function(){                                       
                    var postData = {};
                    $(this).closest('tr').find('.tableRow'){
                        var keyPrefix = 'data[' + index + ']';
                        postData[keyPrefix + '[index]'] = $(this).closest('tr').find('.row_id').text();
                        postData['data['+ index +'][order_id]'] = $('#order_id').text();
                    )};

                $.ajax
                    ({
                    type: "POST",
                    url: "deleterow.php",
                    dataType: "json",
                    data: postData,
                    cache: false,
                    success: function()
                        {
                            alert("Item Deleted");
                        }
                    });         
                $(this).closest('tr').remove();
                calcTotal();
            }); 

4 个答案:

答案 0 :(得分:3)

这一行:

                $(this).closest('tr').find('.tableRow'){

缺少一些东西。什么?不清楚,但也许应该是

                $(this).closest('tr').find('.tableRow').each(function() {

答案 1 :(得分:2)

您忘记了)来电中的结束.live

忽略回调的内容,您的代码是

$('.removeItem').live('click',function(){ ... } ;
                                               ^

请注意,您正在调用具有两个参数的函数,但不会关闭括号。

答案 2 :(得分:1)

您没有关闭“实时”功能块。您需要将});添加到最后一行的末尾。

答案 3 :(得分:1)

根据“index”变量判断,我认为代码应为:

$('.removeItem').live('click', function() {
  var postData = {};
  $(this).closest('tr').find('.tableRow').each(function(index) {
    var keyPrefix = 'data[' + index + ']';
    postData[keyPrefix + '[index]'] = $(this).closest('tr').find('.row_id').text();
    postData['data[' + index + '][order_id]'] = $('#order_id').text();
  });
});