我对使用VB.NET Web应用程序的经验很少。
我想知道如何在“VB WebForms应用程序(Web应用程序)”中捕获功能键(F1,F2 ... F12)。
我一直在搜索引擎上搜索,甚至在stackoverflow上搜索,但我不断得到满足VB.NET Windows Forms的结果,其中显示了_keydown事件的例子,如
Private Sub xyz_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
我试着查看我的WebForm的不同事件,比如Form的事件,TextBox的事件等,但无法在任何地方找到它。所以我认为这些仅适用于Windows窗体。
我想做的是如下 -
另外我如何在TextBox的任何特定行上设置setFocus?
有人可以给我一个小例子来说明如何做到这一点。
答案 0 :(得分:0)
你无法在服务器端捕获它,但也许你可以试试这个:
<script type="text/javascript">
$(document).on("keypress", function (e) {
var code = e.which;
if (code == 123) { // The F12 Key
$.ajax({
type: "POST",
url: "YourCallingPage.aspx/OpenForm",
contentType: "application/json; charset=utf-8",
dataType: "json"
});
}
});
</script>
然后在YourCallingPage.aspx的代码隐藏中(文本框所在的页面)添加以下方法(或者您为方法命名的任何内容):
<System.Web.Services.WebMethod()> _
Public Shared Sub OpenForm()
HttpContext.Current.Response.Redirect("FormThatHasGrid.aspx")
End Sub
现在,一旦你重定向回到YourCallingPage.aspx,我猜你可以将选定的网格值附加到查询字符串并填充文本框,或者其他方法,但这只是一个快速而肮脏的想法,可能适用于你。