我正在使用jQuery Autocomplete,但我需要它可以编辑.我的意思是,如果列表中没有值,我需要捕获它们输入的值.使用上面链接中的示例,用户可能看不到他们的选择,例如C#,并且会键入他们的语言.我在默认行为中发现的是,如果在列表中找不到该值,则会清除用户响应.
我添加了以下代码:
options: {
allowUserDefined: false
},
Run Code Online (Sandbox Code Playgroud)
和
var self = this,
**options = this.options,**
Run Code Online (Sandbox Code Playgroud)
和
if (!valid && !options.allowUserDefined) {
// remove invalid value, as it didn't match anything
$(this).val("");
select.val("");
input.data("autocomplete").term = "";
return false;
}
Run Code Online (Sandbox Code Playgroud)
防止响应被清除.而这些变化确实有效.但由于在列表中找不到C#,因此没有选定的选项可以返回.
如何让代码返回输入字段中输入的内容?在调试代码时,特别是在change事件中,input.val()包含输入的文本,这就是我需要的.我只是无法弄清楚如何访问这个值.
谢谢.
这是我完整的js文件:
(function ($) {
$.widget("ui.combobox", {
options: {
allowUserDefined: false
},
_create: function () {
if (this.options.allowUserDefined === null) {
this.options.allowUserDefined = false;
}
var self = this,
options = this.options,
select = this.element.hide(),
selected …Run Code Online (Sandbox Code Playgroud)