我的页面上有一个Jquery UI自动完成字段,当输入变空时我需要做一些事情(即用户输入内容,然后删除所有内容)。
无论他们在最初生成的自动填充结果中输入的是什么,都必须触发此事件。
如果没有输入类型的自动填充结果,则显示一个按钮;如果有结果或输入为空,则删除它。
UPDATE 我试过这个......
$('#employeeAutocomplete').change(function() {
alert("eventFired");
if($( "#employeeAutocomplete" ).val() == ''){
$('#createEmployeeBtn').hide();
}
});
警报未显示....
谢谢, 丹尼
答案 0 :(得分:6)
http://forum.jquery.com/topic/autocomplete-and-change-event
关于同样的问题:
我发现了变化:确实有效,但只有在输入失去焦点时才会有效。
我实现的解决方案,以获得我想要的效果是实现我自己的检查作为源:函数的一部分。我将minLength:设置为0,如果长度小于2,我加载了我的默认显示数据。
答案 1 :(得分:1)
答案 2 :(得分:1)
我知道这篇文章真的很老但我也在尝试同样的思考,这里的答案并不让我高兴。
所以对于我自己,我对jquery的模糊事件进行了空值测试。
$('.input').focus(function() {
$(this).autocomplete({
// autocomplete code here
})
}).blur(function() {
if($(this).val() == "") {
}
});
答案 3 :(得分:0)
希望这可以帮助你:) .change() - jQuery API
答案 4 :(得分:0)
答案 5 :(得分:0)
$('#employeeAutocomplete').change(function() {
alert("eventFired");
if(this.value == ''){
$('#createEmployeeBtn').hide();
}
});
答案 6 :(得分:0)
jquery ui的autocomplete有自己的更改事件,你试过吗?
$( ".selector" ).autocomplete({
change: function(event, ui) { ... }
});
答案 7 :(得分:0)
我用自动完成关闭事件解决了这个问题! 结果列表为空时关闭触发。在我的情况下,这与空输入字段相对应。
答案 8 :(得分:0)
100%保证可以工作。
@Milox已经提到过:
http://zurb.com/playground/jquery-text-change-custom-event
这个jQuery插件很小。一旦下载/复制它&链接到' js'文件,使用以下内容:
jQuery('#input').bind('notext',function () {
console.log('text field is empty');
});
还有其他配置,但这就是我所需要的。繁荣。排序
答案 9 :(得分:0)
非常老的问题,但是我认为我找到了一个对我有用的解决方案,可能会对他人有所帮助。因此,使它对我有用而又没有在autocomplete
周围跳舞的原因,似乎没有change
和keypress
所存在的缺陷,是keyup
。
只需在keyup
块旁边添加autocomplete
事件处理程序,就可以触发事件,而不管失去焦点或更改字段值,即使清除了该值也是如此。这使该功能在我能想到的所有情况下都能正常工作。这是代码:
$('#employeeAutocomplete').keyup(function() {
if($( "#employeeAutocomplete" ).val() === '') {
$('#createEmployeeBtn').hide();
}
});