如果找不到搜索结果,如何在jquery ui自动填充中放入不同的文本

时间:2016-06-03 05:48:29

标签: javascript jquery jquery-ui autocomplete

我在我的实时搜索栏中使用jquery ui autocomplete。我想要的是,假设用户在搜索栏中输入了一些文本并且没有得到所需的结果,我想捕获用户输入他/她键入的内容。 下面是我正在执行与自动完成相关的所有操作的js文件。



$(window).load(function() {
        //$("#inputdefault").easyAutocomplete(options);
        var dynamicProperties = ["contains some of the properties related to my project"];
$( "#inputdefault" ).autocomplete({
      source: dynamicProperties
  });
  });



 怎么能实现? 如果需要更多信息,请告诉我。

2 个答案:

答案 0 :(得分:0)

Firs检查jquery是否正在加载

<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

其次不要使用此$(window).load(function() {

$(function() {
        //$("#inputdefault").easyAutocomplete(options);
        var dynamicProperties = ["contains some of the properties related to my project"];
$( "#inputdefault" ).autocomplete({
      source: dynamicProperties
  });
  });

https://jsfiddle.net/ctz02p5g/

答案 1 :(得分:0)

以下是代码:

    (function() { 
//$("#inputdefault").easyAutocomplete(options); 

 var dynamicProperties = ["contains some of the properties related to my project"]; 
$("#inputdefault").autocomplete({
source: function(response) {
    var store = $(this).val(); //stores the value entered so it can be returned back when no result is found.

    if (dynamicProperties.length > 0 ){
            response($.map(dynamicProperties, function(value, key) {
                    return {
                        var1: value[0]                                
                            //return the properties from dynamicProperties
                    };
                }));
            }

            else {
                var results = [{
                    var1: 'result not found',
                    var2: store.slice(-10)

                }];

                response(results);
            }
    }
});

基本上我们在检查dynamicProperties是否加载时发送响应。