2010-04-15 179 views
1

第一個DropDownList的基礎上禁用DropDownList時出現問題,沒有回發,它是一個模板這裏的基於Web的應用程序是當前的代碼:如何基於第一個下拉列表框的選定選項禁用或啓用第二個下拉列表中的第二個下拉列表

<script type="text/javascript"> 
    $(function() { var dropDownList1 = $('#<%= ddlUserType.ClientID %>'); 
var dropDownList2 = $('#<%= ddlMember.ClientID %>');   dropDownList1.change(function(e) { 
if (jQuery("#ddlUserType").val() != "ETOC")       dropDownList2.removeAttr('disabled');          e.preventDefault(); 
     else 
     dropDownList2.removeAttr('enabled');         e.preventDefault(); } 
    }); 
     </script> 

現在發生的事情是頁是空白的,如果我刪除上面的代碼中的一切節目,我要去的地方錯了。

這裏是平原和最終的JavaScript代碼的工作:

<script language="javascript"> 
function CheckDropDownState(lstbox) 
{ 
if (lstbox.selectedIndex == 3) { document.forms[0].ddlMember.disabled = 1; } 
else { document.forms[0].ddlMember.disabled = 0; } 
} 
</script> 

和thew的.aspx代碼:

<asp:dropdownlist id="ddlUserType" runat="server" onclick="CheckDropDownState(this);"></asp:dropdownlist> 

再次感謝幫助傢伙。

+0

的頁面是空白與此代碼?不知道那會是什麼,我注意到的是在else中被刪除的屬性;沒有啓用的屬性,要禁用,添加一個屬性禁用設置爲true,否則在JS中將其設置爲false。 – 2010-04-15 17:35:44

回答

1

我試着清理你的代碼一點點:

$(function() { 
    var dropDownList1 = $('#<%= ddlUserType.ClientID %>'); 
    var dropDownList2 = $('#<%= ddlMember.ClientID %>');    
    dropDownList1.change(function(e) { 
     var selectedValue = $(this).val(); 
     if (selectedValue != 'ETOC') { 
      // enable the second combo if the value selected in the first combo 
      // is not ETOC 
      dropDownList2.removeAttr('disabled'); 
     } else { 
      dropDownList2.attr('disabled', 'disabled');          
     } 
     e.preventDefault(); 
    } 
}); 
相關問題