2014-04-01 47 views
2

我有一個數字前面的項目菜單,充當快速導航的鍵盤快捷鍵。認爲九個按鈕與文字一樣:如何將鍵盤快捷鍵分配給沒有Shift,Control或Alt要求的asp.net按鈕?

1 Open 
2 Close 
3 End 

等。實際樣品按鈕:

<asp:Button ID="bOpen" runat="server" Font-Bold="True" Font-Size="Large" 
      Text="1 Open" Width="100%" onclick="bOpen_Click" AccessKey="1" /> 

我希望用戶按下數字鍵盤的數字,數字上頂行或手持外部輸入設備來導航到其他網頁上。目前,我正在使用AccessKey屬性,該屬性適用於手持設備(所以我不需要此部分的幫助),但不是鍵盤編號集。在鍵盤上,使用AccessKey時需要Alt + Shift。我不想要多鍵快捷鍵。

我該如何使單個按鍵激活這些菜單項?

回答

1

我最終使用的解決方案是Javascript/jQuery。

$(document).keyup(function (e) { 
    if (e.keyCode == 49 || e.keyCode == 97) { $("#<%=bOpen.ClientID %>").click(); } 
    if (e.keyCode == 50 || e.keyCode == 98) { $("#<%=bClose.ClientID %>").click(); } 
    ...(etc) 
} 

我每包含兩個按鈕鍵碼佔數字鍵盤和上面的數字排兩者。我把鍵碼從這裏:

http://www.webonweboff.com/tips/js/event_key_codes.aspx

我還獨自AccessKey屬性,使得外部輸入設備將仍然工作和以前一樣。

相關問題