JQuery UI自动完成:响应、Ctrl+A和Backspace
JQuery UI Autocomplete: Response, Ctrl + A and Backspace
我正在编写一个表单,为项目添加成员。只能添加其配置文件记录在系统中的成员。有一个名称输入字段和一个位置选择框。默认情况下,位置选择框处于禁用状态。
想法:
-
用户键入一个名称,将显示自动完成下拉列表。下拉列表包含其配置文件记录在系统中的成员的名称。
-
用户在下拉列表中选择一个名称,位置选择框将不显示。
-
如果在此之后,用户对名称输入字段进行了任何更改,则位置选择框将再次禁用,自动完成下拉列表将再次出现。
我将禁用的事件放入自动完成的响应事件中。
问题:当我把Backspace放在输入字段时,位置选择框被禁用,但当我把Ctrl+A然后放Backspace时,它不是。我该怎么解决这个问题?
$("#autocomplete").autocomplete({
source: function(request, response) {
//some ajax stuffs
},
select: function (e, ui) {
$('#verified').val('true'); //the name is already recorded
$('#selectPosition').removeAttr('disabled');
},
response: function(event, ui) {
if($('#verified').val() == 'true') {
$('#verified').val('');
$('#selectPosition').attr('disabled','disabled');
}
}
})
.change()方法在输入框中发生更改时触发。当焦点移出输入框时,会检测到此更改。无论更改的方式如何,它都能工作——无论您是使用退格键删除一个或多个字符,还是使用Ctrl+a选择整个文本并使用退格删除它。当您将焦点移出输入框时,该事件将触发。
您可以使用.keyup()而不是.change(),这样它在每次释放密钥时都会更新。
相关文章:
- 如何将getJson的响应保存在全局变量中
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 使用angularjs向浏览器发送servlet响应(下载功能)
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 不再使用innerHTML进行AJAX响应.(代码未得到响应)
- 为什么可以't我使用了AJAX响应的一部分
- 响应动画手风琴不工作
- 如何从SeleniumWebdriver获取异步Javascript响应
- Ajax调用在Firefox中不会自动响应
- 可以在响应时隐藏iphone上的“播放”按钮以进行视频播放
- 由于响应中不存在“Access Control Allow Origin”标头,跨域请求停止工作
- 如何在 JavaScript 和 HTML 中更改对输入框的提示响应
- IIS动态HTTP响应标头
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- Ajax响应转换
- 使Intro.js工具提示响应
- 存储$http如何从$http函数(Angularjs)外部获取可访问变量中的响应
- 将高图饼图中的文本居中显示为响应
- Css转换没有响应
- JQuery UI自动完成:响应、Ctrl+A和Backspace