我想将表单上其他输入字段的值传递给具有jQuery自动完成功能的输入。我尝试了几种方法,但都没有工作。这里是一个什么我迄今为止的例子:来自表单上其他字段的自动完成值
HTML:
<input type="text" class="fieldname"/>
<input type="text" class="fieldname"/>
<input type="text" class="fieldname"/>
<input type="text" class="fieldname"/>
<input type="text" class="autofieldnames"/>
<input type="text" class="autofieldnames"/>
的jquery:
$(".fieldname").each(function() {
$(this).blur(function() {
var fieldnames = $(".fieldname").map(function(){ return this.value; }).get();
});
$(".autofieldnames").each(function() {
$(this).autocomplete({ source: fieldnames });
});
如果我手动设置字段名阵列(即,字段名= [ “AAA”,“ abc“];)自动完成工作,但由于某种原因无法将其他字段的值传递给数组。
我按照你的建议,但自动完成仍然不显示。我想知道是不是因为'autofieldnames'在定义之前会将'fieldnames'变量绘制成字段。基本上,我需要'autofieldnames'上的焦点代码来抓取当时的'fieldnames'变量。不知道如何做到这一点。 – tri
是的,这可能是问题所在。您可以在创建自动填充小部件后设置自动填充的“源代码”:查看[本文档部分](http://api.jqueryui.com/autocomplete/#option-source)的末尾。只要不要忘记一次创建小部件。 –