【发布时间】:2016-11-09 17:13:43
【问题描述】:
我正在使用 jquery 自动完成功能。在我的情况下,我的页面上有多个自动完成文本框和隐藏字段。 例如
<input class='myclass' type='text'> </input>
<input class='.emp_num_hidden' type='hidden'> </input>
<input class='myclass' type='text'> </input>
<input class='.emp_num_hidden' type='hidden'> </input>
等等……
所以当我在隐藏字段上触发更改事件时,它会被多次引发 以下是我的代码:
$(".myclass").each(function() {
var $empName= $(this);
var $empNumber = $empName.next('input:hidden');
//things to do
//Setting variable e.g url...
$empName.autocomplete(url,{
//code...
}).result(function(event,data,formatted)
{
$empNumber.val(formatted).change();
});
});
在上面的代码中 $empNumber 包含用于存储自动完成值的隐藏字段,即在这种情况下,当 我们从自动完成中选择任何文本,然后选择的员工编号将存储在隐藏字段中。 基于这个隐藏的字段值,我想进行 ajax 调用,它将根据他的员工返回完整的详细信息 员工编号。 所以我写了一个handler来改变隐藏字段的事件,如下所示。
$(.emp_num_hidden).on('change',function (
)};
这里的'emp_num_hidden'是隐藏字段的类。
请建议如何防止隐藏字段更改的多个事件。
【问题讨论】:
标签: javascript jquery html jquery-ui autocomplete