我有这个jQuery代码:
$(".autocomplete").autocomplete('url',{
extraParams: {country: function(){
var id = $(this).attr("id"); // not working
var country = id.replace("uni", "country");
var country_id = $("#"+country).val();
return country_id;
}}
}).result(function(event, item) {
// getNames(item);
});
因为我将有几个,带有自动填充字段的ajax加载表单, 我需要为他们每个人发送适当的附加参数 从各自的表格到服务器。
我试图通过获取输入字段的id并使用它来获取将保存必要参数的country字段的id来实现此目的。 id将采用适当的格式以允许此操作。类似的东西:
uni_1,country_1; uni_2; country_2
uni是自动填充字段,国家/地区是附加参数。
我已经意识到$(this).attr(“id”)在自动完成中不起作用,就像简单的jQuery事件一样,我还没有找到这样做的方法。我尝试使用toSource方法来查看自动完成对象,但似乎它不包含字段ID。
因此,如果有人知道如何做到这一点,请分享。
非常感谢您提前。 伊万
答案 0 :(得分:6)
你可以尝试
$(".autocomplete").each(function() {
var id = $(this).attr("id");
$(this).autocomplete('url',{
extraParams: {country: function(){
var country = id.replace("uni", "country");
var country_id = $("#"+country).val();
return country_id;
}}
}).result(function(event, item) {
// getNames(item);
});
});