JQuery UI之Autocomplete(4)多值输入、远程缓存与组合框

web开发作者:dayu日期:8天前点击:5
); }) .click(function() { input.focus(); // 如果已经可见则关闭 if ( wasOpen ) { return; } // 传递空字符串作为搜索的值,显示所有的结果 input.autocomplete( "search", "" ); }); }, _source: function( request, response ) { var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" ); response( this.element.children( "option" ).map(function() { var text = $( this ).text(); if ( this.value && ( !request.term || matcher.test(text) ) ) return { label: text, value: text, option: this }; }) ); }, _removeIfInvalid: function( event, ui ) { // 选择一项,不执行其他动作 if ( ui.item ) { return; } // 搜索一个匹配(不区分大小写) var value = this.input.val(), valueLowerCase = value.toLowerCase(), valid = false; this.element.children( "option" ).each(function() { if ( $( this ).text().toLowerCase() === valueLowerCase ) { this.selected = valid = true; return false; } }); // 找到一个匹配,不执行其他动作 if ( valid ) { return; } // 移除无效的值 this.input .val( "" ) .attr( "title", value + " didn‘t match any item" ) .tooltip( "open" ); this.element.val( "" ); this._delay(function() { this.input.tooltip( "close" ).attr( "title", "" ); }, 2500 ); this.input.data( "ui-autocomplete" ).term = ""; }, _destroy: function() { this.wrapper.remove(); this.element.show(); } }); })( jQuery ); $(function() { $( "#combobox" ).combobox(); });

最后,此方法很少用,因为对应的autocomplete可以实现此功能。但为了知识的完整性,这里还是可以看一下。

最后还没解决的问题:

$("#language").autocomplete({
        source: [ ‘Chinese‘,‘English‘,‘Spanish‘,‘Russian‘,‘French‘,‘Japanese‘,‘Korean‘,‘German‘],
minLength : 0 }).focus(
function(){ $(this).data("autocomplete").search($(this).val()); });

此代码的功能是当我的鼠标点击输入框时会自动把对应的选项列出了,但是自己测试时一直报如下错误。

技术分享

而在公司项目中却可以,不知道缺少了什么还是怎样,还有待解决。

最后,autocomplete的整个工程实例代码下载链接:http://download.csdn.net/detail/u013865056/9910503

JQuery UI之Autocomplete(4)多值输入、远程缓存与组合框

原文地址:http://www.cnblogs.com/zhangjinru123/p/7236481.html


下一篇       上一篇