VS.NET - ASP.NET -Javascript Functions for Textboxes

Synopsis:

There are times when you need to perform some actions on controls without postbacks or that are not possible to perform on the serverside. Here are a handful of examples using Textboxes as an example control.

Solution:


This function can be used to set the text of a textbox control or any other control with a value property. This will not work on a label control because the underlying code is rendered as a span object, if you modify the code to check for control type, you could changethe .value to a .innerhtml as needed.
Public Function SetText(ByVal FocusControl As Control, _
            ByVal strText As String, Optional ByVal incTags As Boolean = False) As String
        Dim Script As New System.Text.StringBuilder
        Dim ClientID As String = FocusControl.ClientID

        With Script
            If incTags Then
                .Append("<script language='javascript'>")
            End If
            .Append("document.getElementById('")
            .Append(ClientID)
            .Append("').value = '" & strText & "'; ")
            If incTags Then
                .Append("</script>")
            End If
        End With

        Return Script.ToString
End Function

Examples of use:
   Label2.Attributes.Add("onclick", SetText(TextBox1, "Set on a click event"))
   Me.RegisterStartupScript("setText", SetText(TextBox1, "Startup script", True))


The SelectText function selects all the text in the passed textbox control.
		
 Public Function SelectText(ByVal FocusControl As Control, _
            Optional ByVal incTags As Boolean = False) As String

        Dim Script As New System.Text.StringBuilder
        Dim ClientID As String = FocusControl.ClientID

        With Script
            If incTags Then
                .Append("<script language='javascript'>")
            End If
            .Append("document.getElementById('")
            .Append(ClientID)
            .Append("').select(); ")
            If incTags Then
                .Append("</script>")
            End If
        End With

        Return Script.ToString
End Function

Examples of use:
   Label1.Attributes.Add("onclick", SelectText(TextBox1))
   Me.RegisterStartupScript("selectText", SelectText(TextBox1, True))


The SetFocus function can be used to set the focus to any control which can receive focus
		
Public Function SetFocus(ByVal FocusControl As Control, _
            Optional ByVal incTags As Boolean = False) As String

        Dim Script As New System.Text.StringBuilder
        Dim ClientID As String = FocusControl.ClientID

        With Script
            If incTags Then
                .Append("<script language='javascript'>")
            End If
            .Append("document.getElementById('")
            .Append(ClientID)
            .Append("').focus();")
            If incTags Then
                .Append("</script>")
            End If
        End With
        Return Script.ToString
End Function

Examples of use:
   Label1.Attributes.Add("onclick", SetFocus(TextBox1))
   Me.RegisterStartupScript("setFocus", SetFocus(TextBox1, True))

About this page: