2010-07-22 57 views
1

作爲我從最後一篇文章 - How would I trim the input to a JQuery auto-complete box?。我決定提出一個新問題,而不是繼續編輯那個問題。如何讓jQuery自動完成執行搜索()當用戶點擊提交

我目前有jQuery的ui自動完成1.8(左右)工作相當不錯,除了一件事。如果用戶只輸入(有效)名稱並點擊提交,則自動完成查找將永遠不會運行,因此相關值永遠不會被繪製並分配給輸入框。這當然是一個問題。閱讀文檔,這意味着我可以使用jQuery search()方法來克服這一點。但是,我正在努力實現它的工作。我已經嘗試將這個電話號碼登錄到文本輸入框的onblur事件中,並在提交按鈕的onclick事件中嘗試,但無濟於事 - 每當我點擊提交時,我都沒有輸入框的值。代碼:

<form action = "<?php echo $this->URL();?>" method="post"> 
    <fieldset> 
     <ol> 
      <li> 
       <label for="Resource">Resource</label> 
       <input id="Resource" name="Resource" class="text" type="text" value="" onblur="jQuery('#Resource').search();"/> 
      </li> 
     </ol> 
    </fieldset> 
    <fieldset class="submit"> 
     <input id="Submit" name="Submit" type="Submit" class="Submit" value ="Submit" onclick = "jQuery('#Resource').search();"/> 
    </fieldset> 
</form> 

那麼,究竟是我做錯了什麼?

回答

0

我都回答了​​我自己的問題,也發現search()不像我想象的那樣工作。我試過了:

<input id="Submit" name="Submit" type="Submit" class="Submit" value ="Submit" onclick="jQuery('#Resource').autocomplete('search');"/> 

而且發現表單完成提交前一秒,自動完成框閃爍。很明顯,search()只是讓自動完成框做一個正常的搜索,而不是自動選擇任何匹配結果搜索,這正是我正在尋找的。