k80sg
k80sg

Reputation: 2473

Disabling a control inside jQuery dialog

I am trying to disable a ddl (ddlGender) inside my jQuery UI Dialog with Javascript but it doesn't work, also tried from code-behind as well, please advice. Thanks:

 function loadDialog() {
       var gender = $('#<%=litGender.ClientID %>').val();
       if (gender != '') {
           alert('true');
           $('#<%=ddlGender.ClientID %>').disabled = true;
       }
        $('#DialogBox').dialog('open');
    }



 <div id="DialogBox" title="">
     <span>Gender:</span><asp:DropDownList ID="ddlGender" runat="server" AutoPostBack="True"
                                                                                       onselectedindexchanged="ddlGender_SelectedIndexChanged">
                                                                         <asp:ListItem Text="Both" Value="" Selected = "True"/>
                                                                         <asp:ListItem Text="Male" Value="m"/>
                                                                         <asp:ListItem Text="Female" Value="f" /> 
                                                                     </asp:DropDownList>
</div>

Upvotes: 1

Views: 112

Answers (2)

Fr&#233;d&#233;ric Hamidi
Fr&#233;d&#233;ric Hamidi

Reputation: 262919

$() returns a jQuery object, not a DOM element. You can either use prop():

$("#<%=ddlPref.ClientID %>").prop("disabled", true);

Or work on the DOM element itself:

$("#<%=ddlPref.ClientID %>")[0].disabled = true;

Upvotes: 1

antyrat
antyrat

Reputation: 27765

You need to use attr() method for this:

$('#<%=ddlPref.ClientID %>').attr( 'disabled', 'disabled' );

Upvotes: 2

Related Questions