jquery自动完成选项不起作用

时间:2011-09-11 19:57:06

标签: php javascript jquery jquery-autocomplete

我正在使用jquery自动完成

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js'></script>

一切正常。但是现在我正在尝试添加一个没有做任何事情的minChars选项。我的代码如下所示:

$( "#searchid" ).autocomplete({
    source: "/autocomplete_url.php?more=1", 
    minChars:6,             
    select: function(event, ui) { 
               $("#searchid").val(ui.item.value);
               $("#formid").submit(); 
            }
});

一切正常,但它忽略了我添加的选项。为什么/如何调试问题?

更新:根据下面的答案,我已经转而使用minLength了。我尝试过以两种不同的方式添加,但它不起作用:/这是我的“新”代码:

    $( ".selector" ).autocomplete({ minLength: 6 });        
    $( "#searchid" ).autocomplete({
        source: "/autocomplete_url.php?more=1", 
        minLength:6,        
        select: function(event, ui) { 
               event.preventDefault();
               $("#searchid").val(ui.item.value);
               $("#formid").submit(); 
            }
    });

由于

3 个答案:

答案 0 :(得分:2)

不是minChars而是minLength
http://jqueryui.com/demos/autocomplete/#option-minLength

$( ".selector" ).autocomplete({ minLength: 0 });

答案 1 :(得分:0)

通常,如果要操作自动填充本身所附加的表单元素,则应包含

event.preventDefault();

select: function(event, ui){}区块内。否则,默认的自动完成行为将与您的代码冲突,因为它也试图设置该值。

答案 2 :(得分:0)

确保您的源返回带有键的JSON:id,value和label。如果不是,则需要使用回调函数作为源。在nettus上查看这篇文章:

http://net.tutsplus.com/tutorials/javascript-ajax/how-to-use-the-jquery-ui-autocomplete-widget/