2010-04-08 108 views
2

我已經使用asp:按鈕控件創建了一個鍵盤。 Onclientclick事件會在文本框中顯示相應的文本。所有這些工作正常。Asp.net按鈕點擊填充文本框的自動完成

需求:

  1. 我想用jQuery來一個文本框添加自動完成。如果我點擊按鈕[A]它必須顯示所有的記錄。

  2. 如果使用系統鍵盤,此過程正在工作。

代碼:

 <link href="CSS/jquery.autocomplete.css" rel="stylesheet" type="text/css" /> 
     <script type="text/javascript" src="js/jquery.autocomplete.js"></script> 

     $("#antSearchText").autocomplete('SearchAutoComplete.ashx'); 

    <asp:Button ID="six" runat="server" Text="6" CssClass="myclass" OnClientClick="return typeLetter(this);" /> 

格塔。

回答

1

謝謝你的所有答覆。我的問題通過使用下面的代碼來解決事件。

代碼:

var q = document.getElementById('txtbox'); 
    var evObj = document.createEventObject(); 
    evObj.keyCode = 84; // [T] key 
    q.fireEvent('onkeydown', evObj); 

格塔。

0

您應該在客戶端單擊事件結束時返回false,並在typeletter函數中執行文本框操作。它應該看起來像OnClientClick="typeLetter(this);return false;"

這將停止ASP:按鈕的回發

0

問題是插件,默認使用onkeyup事件(可能),這是爲什麼系統keybord會工作。該API提供doese調用觸發搜索

http://docs.jquery.com/Plugins/Autocomplete/search

我沒有看到像$任何東西(這).search()或$( '#輸入提示'),搜索()。在你的功能。我可能錯過了它,雖然

你現在可以忽略以下內容!

OLD回答以下

嘗試使用標準的HTML按鈕,而不是一個ASP的:淨按鈕,如果沒有其他原因,使用ASP:淨按鍵控制即是。

1

此處的文檔說明了如何激活文本框上的自動完成:JQuery Autocomplete。你有沒有試過,但它仍然無法工作?

否則,您可以添加更多信息嗎?什麼使「系統鍵盤」工作? typeletter函數做了什麼?