Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB7
Expertise: Intermediate
Dec 16, 2002



Building the Right Environment to Support AI, Machine Learning and Deep Learning

IsClientScriptEnabled - Checking if the client script support is requested and possible

If you develop a custom control and want to give the option to output client-side javascript code, you'll likely have a EnableClientScript that allows the developer to specify whether the js code will be generated or not. However, before generating and outputting the js, you should also check whether it is supported by the target client browser. The following function takes in input a Boolean value (that will be the value of your EnableClientScript property), and returns the same value only if javascript code is supported, otherwise it returns False.

' Return True if client script support is requested and possible
Function IsClientScriptEnabled(Byval value as Boolean) As Boolean
    ' we need a Try block because accessing the Browser
    ' property at design time may throw
        ' Return False if DOM version is too low.
        If Page.Request.Browser.W3CDomVersion.Major < 1 Then
            Return False
        End If

        ' Return False if EcmaScript version is too low.
        If Page.Request.Browser.EcmaScriptVersion.CompareTo(New Version(1, _
            2)) < 0 Then
            Return False
        End If

        ' if all tests passed, return the input value
        IsClientScriptEnabled = value
        ' return False if any error occurs
        Return False
    End Try
End Function
Within the method where you generate the control's output code (for example from the overridden Render method), instead of doing something like this:

If EnableClientScript Then
   ' generate and output javascript code
End If
You'll do:

If IsClientScriptEnabled(EnableClientScript) Then
   ' generate and output javascript code
End If

Note: This code is taken from Francesco Balena's Programming Microsoft Visual Basic .NET - MS Press 2002, ISBN 0735613753.

Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date