如何在Jquery Autocomplete combox中禁用特定选项

当我有简单的下拉框

 Apple Orange Banana  

下拉菜单中禁用香蕉选项。

当我尝试使用Jquery自动完成combobox时

 $( "#fruits" ).combobox(); 

自动完成下拉列表工作正常,但禁用选项Banana(已禁用选项集)。

假设它是演示中的comboboxhttp://jqueryui.com/demos/autocomplete/

尝试替换此行:

 response( select.children( "option" ).map(function() { 

有:

 response( select.children( "option" ).not(':disabled').map(function() { 

您还可以使用优秀的选择元素格式化程序 ,它将搜索框与格式化的选择元素组合在一起。

可悲的是,我不认为这是可能的。

即使用css中的display:none隐藏元素仍然允许它显示在自动完成字段中。 更糟糕的是,一旦它被选中,它实际上在底层选择框中被选中,即使它被“禁用”。

您可以选择在禁用元素时删除该元素,如果需要启用该元素,则可以再次添加该元素。