有没有办法让jquery自动完成插件只响应“select”回调,而不是在用户选择后用所选项目的标签值填充目标输入?
我正在努力,但仍然没有成功,等待帮助...
的问候。 拉里
答案 0 :(得分:11)
我知道这是一个老问题,但是对于那些不想使用setTimeout函数的人来说,解决方法是将属性ui.item.value更改为“”
<强>代码强>:
$('#ac').autocomplete({
source : ["hello", "how", "do", "you", "do"],
select: function(event, ui){
if (ui.item && ui.item.value){
ui.item.value="";
}
}
})
答案 1 :(得分:1)
尝试以下代码;)
$('#ac').autocomplete({
source : ["hello", "how", "do", "you", "do"],
close: function(event, ui){
$('#ac').val('');
}
});
答案 2 :(得分:0)
这是一种更简单的方法(使用experimentX的代码):
$('#ac').autocomplete({
source : ["hello", "how", "do", "you", "do"],
select: function(event, ui){
$('#ac').css('color','white');
}
})
答案 3 :(得分:0)
如果您的源数组是具有“label”和“value”属性的对象数组,则插件会为您处理此问题。
请参阅this link:
$('#autocomplete').autocomplete({
source: [
{
label: 'This is a descriptive label'
, value: 'Just the value'
}
,{
label: '2 is better than one'
, value: '2'}
,{
label: 'third times the charm'
, value:'Three'
}
]
})
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
<input type='text' id='autocomplete'>
SO的代码片段不喜欢它,但它可以正常工作
答案 4 :(得分:-1)
$('#ac').autocomplete({
source : ["hello", "how", "do", "you", "do"],
select: function(event, ui){
setTimeout(function (){
$('#ac').val('');
}, 1000)
}
})