我可以在不通过下拉列表的情况下让 jQuery 自动完成以匹配输入吗?
Can I get jQuery autocomplete to match input without going through dropdown?
我想让我的自动完成在模糊文本框或按回车键时返回"隐藏"属性。数据的格式为 {value: "Pal", pts: "30"}
.我想获得pts
.下面是一个示例:
http://jsfiddle.net/ctuAg/4/
键入一两个字母并从下拉列表中选择一个名称,按预期更新"点"文本框(名称长度的 10 倍)。现在,我想知道是否有办法在完全键入名称然后按 Enter 或模糊(选项卡或鼠标单击)时触发此点更新。也就是说,让自动完成搜索与文本框值和更新点匹配。
到目前为止,仅单击下拉列表中的名称才能更新点。
我做了一些搜索,我找到的最接近的功能/触发器是search
。我尝试将其放在模糊中,但 .pts 返回未定义。这可能是答案,我应该如何在我的情况下使用它?
$("#autocomp").autocomplete({
search: function(event, ui) {
alert(ui.item.pts);
}
});
作为示例的基本扩展,您可以简单地检查 #autocomp
的值是否在数组中,然后按回车键:
$("#autocomp").keypress(function(event) {
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13') {
$("#status").append("Enter pressed'n");
/* NEW CODE HERE */
// loop through the array and check the value against available names
for ( var i = 0, l = names.length; i < l; i++) {
// if the name matches, update #points
if ($(this).val() === names[i].value) {
$("#points").val(names[i].pts);
}
}
/* END NEW CODE */
$("#points").focus();
}
});
虽然这可能不是最有效的方法,但它可以完成工作。在这里小提琴:http://jsfiddle.net/ctuAg/6/
相关文章:
- 使用ajax的输入jquery意外结束
- 如何从输入 JQuery 或 javascript 中获取修改后的文本
- 从输入 jquery 获取值
- 如何将MP3文件播放到麦克风输入jQuery中
- 正在尝试预览表单输入jQuery
- 如何启用由日期选择器 ui 附加的输入?(JQuery 插件)
- 检测用户是否没有't输入任何内容/删除输入jQuery
- 删除输入jquery中的值时清除所有更改
- 在编辑输入 jQuery 后激活只读返回
- 验证并附加电话输入 Jquery
- 如果相同的单词在输入 jquery 或 js 中写入两次,则发出警报并不允许
- 如何附加用户输入?jQuery.
- 使用 .val() 的输入 jQuery 进行计算
- 对所有子输入JQuery使用replaceWith
- Vaildate动态添加数组输入-jQuery Validate
- 文件输入jQuery更改事件只触发一次
- 正确重命名克隆的输入JQuery
- 检查输入Jquery的起始字符的值
- 动态添加输入jquery
- 在鼠标输入jquery中使用延迟