Feb 10
2009

Um per JavaScript in ASP.NET auf eine Checkbox zuzugreifen und deren Checked-Status abzurufen, kann man sich unterschiedlicher Syntax bedienen. Es ist jedoch zu beachten, dass Browser wie der IE oder der FF unterschiedlich reagieren können. Im schlechtesten Fall ignoriert der Browser den Code komplett, wenn es darum geht, über die ClientID auf das Control zuzugreifen.

Mir ist das im u.g. Codeschnippsel zum Thema Custom Validation einer CheckBox passiert. Mit "document.all" hat sich zwar der IE zufrieden gegeben, im FF hingegen hat die entsprechende Codezeile nicht funktioniert. Anders mit "$get". Diese Syntax verstehen beide Browser.

 <asp:CheckBox 
     ID="cbxTermsLoggedIn" 
     runat="server" 
     ValidationGroup="grpvalB2BLoggedInRegistration" /> 

<script language="javascript" type="text/javascript"> 
    function ClientValidationCbxTermsLoggedIn(source, args) 
    { 
        //use:
        var cbx = $get('<%=cbxTermsLoggedIn.ClientID %>');
        args.IsValid = cbx.checked;

        //instead of:
        //args.IsValid = document.all["<%=cbxTermsLoggedIn.ClientID %>"].checked; 
    } 
 </script>

<asp:CustomValidator 
    ID="cstmvalB2BRegistrationTermsLoggedIn" 
    runat="server" 
    SetFocusOnError="true" 
    Display="Dynamic" 
    ErrorMessage="Sie müssen der Speicherung zustimmen"
    ClientValidationFunction="ClientValidationCbxTermsLoggedIn" 
    ValidationGroup="grpvalB2BLoggedInRegistration"
    ValidateEmptyText="True" />

Tags:

Related posts

Comments

fast cash loans

Posted on Saturday, 24 October 2009 01:06

Hmmm interesting stuff

personal loans

Posted on Tuesday, 3 November 2009 22:00

Thank you for your help!

Comments are closed