2010-04-25 31 views
2

我必須在asp:textbox上使用一個虛擬(屏幕上)鍵盤,它有一個AjaxControlToolkit的自動完成附加到它,我使用的虛擬鍵盤是jQuery鍵盤插件:http://keith-wood.name/keypadRef.html,但我有一些合併這些問題兩個:爲什麼虛擬鍵盤不會觸發AutocompleteList?

  1. 在虛擬鍵盤上輸入並不是 會觸發自動完成列表。
  2. 當文本框具有 自動回= true,如果你點擊虛擬鍵盤上 任何東西 文本框失去其重點和崗位 形式。

有誰知道在響應自動完成列表激活什麼事件? 並且我還需要知道如何在按下虛擬鍵盤上的按鈕時防止文本框失去焦點?

回答

1

1)JavaScript設置值並且JavaScript不會觸發自動完成列表彈出。 [我懷疑是否有用JavaScript觸發它]

2)點擊「鍵盤」從文本框中刪除焦點,然後模糊事件觸發並提交表單。 [你將不得不編寫自己的AutoPostBack =真] 基本思路是添加調用document.forms[0].submit()和聚焦是否超時觸發之前重新添加到文本框超時clearTimeout()

var textbox = document.getElementById("yourElementId"); 
textbox.blur = function(){ this.timer = window.setTimeout(function(){ document.forms[0].submit(); }, 100) }; 
textbox.focus = function(){ if(this.timer) window.clearTimeout(this.timer); };