我正在使用 jQuery UI 1.12。我有一个输入字段,我使用代码将其转换为自动完成选择
$("#myFilter").autocomplete({source: myItems});
然后,我在初始化时自动选择一个项目
$("#myFilter").autocomplete("search", defaultValue);
我的问题是,如何获取所选项目的所选 ID?如果我参加“onchange”事件,我可以这样做
$( "#myFilter" ).on( "autocompleteselect", function( event, ui ) {
var id = ui.item.value;
但是,我不在 onchange 事件中,因此我不确定如何提取所选值。
最佳答案
小部件工厂根据名为 "ui<Widgetname>"
的 jquery 数据属性存储其内部数据。 。对于自动完成小部件,它是 uiAutocomplete
。所选项目存储为 selectedItem
(默认情况下,这是一个包含 label
和 value
键的普通对象,但如果需要,可以通过源和渲染方法更改它以保存更多数据)。所以你可以这样做:
$("#myFilter").data("uiAutocomplete").selectedItem.label
或
$("#myFilter").data("uiAutocomplete").selectedItem.value
这是一个基于使用文档的 jsfiddle 示例:http://jsfiddle.net/xt6482wm/3/
关于javascript - 如何从 onchange 事件外部获取 jQuery UI 自动完成值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51089793/