将变量从锚点击传递到ajax

时间:2014-03-28 19:01:22

标签: javascript jquery jquery-selectors

我正在使用opencart并被卡住了。 我正在做的是向ajax发送一些变量。 这是我的数据:

data: $('.product-block input[type=\'text\'], .product-block input[type=\'hidden\'], .product-block input[type=\'radio\']:checked, .product-block input[type=\'checkbox\']:checked, .product-block select, .product-block textarea'),

工作正常。 但我需要做的是将'.product-block'替换为从锚点击中选择一个id。

我的身份在这里

var id = $(this).attr('rel');

但我无法从此链接构建数据源。 我这样使用它:

data: $(id + ' input[type=\'text\']', id + ' input[type=\'hidden\']', ... ),

并测试了这个

data: $(id + ' input[type=\'text\']', + id + ' input[type=\'hidden\']', ... ),

但它不起作用。 有人能帮助我吗?

1 个答案:

答案 0 :(得分:1)

删除所有“.product-block”事件并使用find()更简单:

var id = "#" + $(this).attr('rel');
$(id).find('input[type=\'text\'], input[type=\'hidden\'], input[type=\'radio\']:checked,  input[type=\'checkbox\']:checked, select, textarea');

DOCUMENTATION

另外,请不要忘记使用serialize()从表单中“拉取”数据:

data: $(id).find(...).serialize() //removed ;

DOCUMENTATION