0

我在同一页面上有几个表单,每个表单都有 .select_form 类,当您单击表单上的复选框时,每个表单都会通过 ajax 发送选定的值。

我想要做的是引用选定的元素(因为有多个表单具有相同的 css 类),而不是以不同的方式命名每个表单。理想情况下,我想我需要引用“this”并传递它,但我就是无处可去!

$('.select_form input').live("click", function(){
     check();
});


function check()
  {

     $("#ajax_totals").load("/stuff/things", $(".select_form").serializeArray());
  }

我想我想要类似的东西:

$('.select_form input').live("click", function(){
     check(this);
});


function check(this)
  {

     $("#ajax_totals").load("/stuff/things", $(this).serializeArray());
  }
4

2 回答 2

2

是的,您可以,您不能使用该变量this,因为它是reserved

function check(elem)
{
     $("#ajax_totals").load("/stuff/things", $(elem).serializeArray());
}

其他选项是使用call()

于 2013-01-30T20:06:39.847 回答
1

您可以使用.call()动态设置的值this应该是什么:

$('.select_form input').live("click", function(){
     check.call(this);
});

function check () {
    $("#ajax_totals").load("/stuff/things", $(this).serializeArray());
}
于 2013-01-30T20:08:24.577 回答