页面捕获Enter键实现Tab键移动功能(指定特定的控件)

来源:互联网 发布:工作不用java框架 编辑:程序博客网 时间:2024/06/03 22:41

'以下是实现此功能的公共函数,此函数只实现在TextBox中移动,如果需要在更多的控件中实现此功能,

'只需要简单的修改。if(document.activeElement.type == 'text')在此判断条件中加入要实现功能的控件类

'型即可;如果想用Enter完全替换Tab,只需把以上条件代码行去掉即可。

Public NotInheritable Class common

    Private Sub New()

    End Sub
    ''' <summary>
    ''' Enter移動
    ''' </summary>
    ''' <remarks></remarks>
    Public Shared Sub EnterMove(ByRef page As System.Web.UI.Page)
        Dim setEnterMoveScript As New StringBuilder
        setEnterMoveScript.Append("<script type='text/javascript' language='javascript'>")
        setEnterMoveScript.Append("    window.onload = function WindowLoad(){")
        setEnterMoveScript.Append("        document.onkeydown = EnterMove")
        setEnterMoveScript.Append("    };")
        setEnterMoveScript.Append("    function EnterMove(){")
        setEnterMoveScript.Append("        if(document.activeElement.type == 'text')")
        setEnterMoveScript.Append("                if(window.event.keyCode == 13)")
        setEnterMoveScript.Append("                    event.keyCode = 9")
        setEnterMoveScript.Append("    }")
        setEnterMoveScript.Append("</script>")
        page.ClientScript.RegisterStartupScript(page.GetType, "EnterMoveScript", setEnterMoveScript.ToString)
    End Sub
End Class 

'页面调用

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        common.EnterMove(Me)
End Sub

原创粉丝点击