如何在选项选择上使用 jquery 自动完成来进行回发?

Posted

技术标签:

【中文标题】如何在选项选择上使用 jquery 自动完成来进行回发?【英文标题】:How to cause a postback using jquery autocomplete on option select? 【发布时间】:2014-11-30 13:48:28 【问题描述】:

TEST AREA

我创建了一个简单的 jquery-ui 自动完成演示。

问题

当从列表中选择一个选项时,如何导致回发发生?

HTML

<select id="ddl"></select>
<input id="field" type="text"></input>

JQUERY

$("#field").autocomplete(
    select: function(event, ui) 
        __doPostBack("#ddl", ""); //Postback will not occur here?
    
);

注意事项

此演示中的其余代码不是必需的,它只是用来表明已成功选择了一个选项。

我看不出是什么阻止了回发的发生。我只想在用户从自动完成生成的列表中选择任何选项时进行回发。

【问题讨论】:

回发语句前有问题; jsfiddle.net/g23vrfoe/2 alert 语句永远不会弹出。 它按照我的描述工作。你使用的是什么浏览器?你能具体说明你采取的步骤吗? 警报对我来说很好用。按预期显示在选项选择上。 好吧,我可能没有按预期使用它。 按“A”,选择一个选项,查看消息。 【参考方案1】:

向自动完成小部件添加值已为我修复了它。

请注意,“选择”功能仅在我单击其中一个自动完成选项时才会触发。如果我只输入其中一个选项的名称,它不会触发。

查看下面的更新代码:

<select id="ddl" />
<input id="field" type="text" />
<script type="text/javascript">
var availableAutocompleteValues = [
   "jquery",
   "java",
   "javascript"
];
$("#field").autocomplete(
    source: availableAutocompleteValues
);
$("#field").autocomplete(
    select: function (event, ui) 
        __doPostBack("#ddl", ""); //Postback will not occur here?
    
);
</script>

【讨论】:

以上是关于如何在选项选择上使用 jquery 自动完成来进行回发?的主要内容,如果未能解决你的问题,请参考以下文章

jQuery UI 自动完成:如何让 TAB 选择列表中的第一个选项?

在 jQuery 自动完成下拉列表中选择选项时失去焦点

jQuery自动完成,通过选择建议选项填充多个字段

选择 jQuery UI 自动完成后清除表单字段

基于其他自动完成输入的 jQuery 自动完成选项

Jquery自动完成不使用选择更新输入值