Jquery自动完成:如何忽略逗号作为分隔符
Jquery autocomplete: How to ignore comma as delimiter
我目前在Jquery的自动完成小部件上遇到了一些问题。我有一个远程数据源,其中一些字符串(或搜索词)中有逗号。只要我在输入文本框中键入逗号,建议列表就会消失。
在我看来,自动完成小部件似乎使用逗号作为分隔符。如何轻松忽略逗号以便显示正确的结果?
这是我的代码:
$.widget( "custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function( ul, items ) {
var that = this,
currentCategory = "";
$.each( items, function( index, item ) {
if ( item.category != currentCategory ) {
ul.append( "<li class='ui-autocomplete-category'>" + item.category + "</li>" );
currentCategory = item.category;
}
that._renderItemData( ul, item );
});
}
});
$(".sottendeDokumenterSearchField").catcomplete({
source: "myURL",
minLength: 2,
select: function( event, ui ) {
return processAutocompleteElSelected(event, ui);
},
open: function(event, ui){
if(autoselect){
var keyEvent = $.Event("keydown");
keyEvent.keyCode = $.ui.keyCode.DOWN;
$(".sottendeDokumenterSearchField").trigger(keyEvent);
keyEvent.keyCode = $.ui.keyCode.ENTER;
$(".sottendeDokumenterSearchField").trigger(keyEvent);
}
autoselect = false;
}
});
您可以尝试进入jquery.autocomplete.ui JS文件,并从该代码中查找和删除逗号大小写。那么字段就永远找不到它了。我不确定你使用的是哪个版本的ui或哪个版本。
在将输入值发送到自动完成函数之前,请用str_replace将其从逗号中删除。
我不熟悉自动完成小部件,所以我不能给出任何代码示例,对不起。希望它仍然能为你指明正确的方向。
相关文章:
- 我如何找到一个句子中的所有空格并替换忽略它们
- 为什么忽略了eval()代码中的语法错误
- jQuery.when()在循环中被忽略
- 调用后不异步Ajax忽略函数
- 替换模式忽略模式中的字符
- MVC正在忽略我的Javascript文件
- 单击其他元素时,我如何使用 jQuery 忽略更改事件
- 自定义调查页面并希望在时区内按时间忽略(可能)
- “createImageData()”和“new ImageData(()”有何不同
- e.preventDefault在表单提交时被忽略
- Regex&Javascript:忽略wxyz.jpg之前的任何内容
- Javascript和RegEx:拆分并保留分隔符
- javascript/regex忽略双引号中的分号
- 不使用分隔符分解字符串
- 设置自动分隔符的自定义属性
- 添加一个setTimeout方法会使jQuery悬停方法忽略setTimeout方法中的函数
- 通过多个分隔符解析字符串
- Jquery自动完成:如何忽略逗号作为分隔符
- 在JavaScript中使用RegExp拆分字符串,忽略括号内的分隔符
- 用多个分隔符分隔字符串,保留它们并在双引号中忽略它们