0

私はAsp.netを初めて使用します

リストとその他のコントロールがほとんどないWebサイトを作成していDropDownます..

ドロップダウンで選択したインデックスを変更するたびに、それが次のいずれかと等しい場合Itemはコントロールを表示し、等しくない場合はそれらのコントロールを非表示にしたい...

ここで私はこのコードで試しましたが、得られません...

  var selectmenu = document.getElementById("<%=ddlCategory.ClientID%>");
    var chosenoption = selectmenu.options[selectmenu.selectedIndex];
     //Controls which are to hidden or visible
    var strCtrlIds =   "lblOrderNumber,txtOrderNumber,btnGetOrderNumber,lblItemNumber,txtItemNumber,lblReason,txtReason,lblMaterial,txtDescription";
     if (chosenoption.value != "Dry End - Single Stack") {
         debugger;
         ToggleGivenControl(strCtrlIds, false);

     }
     else {
         ToggleGivenControl(strCtrlIds, true);
     }
     /**********************************************************
                    Toggle for Display End- Stack Options
     ************************************************************/


     function ToggleGivenControl(strCtrlIds, blnIsVisible) {
         debugger;
         var ctrls = strCtrlIds.toString().split(",");
         var strCtrlId = '';
         for (var intCnt = 0; intCnt < ctrls.length; intCnt++) {
             strCtrlId = ctrls[intCnt];
             var ctrl = document.getElementById(strCtrlId);
             if (ctrl != null) {
                 if (blnIsVisible) {
                     ctrl.style.display = 'block';
                     ctrl.style.visibility = 'visible';
                     ctrl.focus();
                 }
                 else {
                     ctrl.style.display = 'none';
                     ctrl.style.visibility = 'hidden';
                 } //Else End
             } //If End.
         } //For end.
     }

そして私のasp.netコードは

  <asp:DropDown id="ddlCategory" runat="server" />
  <asp:Lable id="lblItem" runat="server" />
  <asp:TextBox id="txtItem" runat="server"/>
 ....

そして、データソースでドロップダウンをバインドしました

誰でも私の問題を解決できますか?

4

1 に答える 1

0

私はこのように考えていると思います。

<asp:DropDown id="ddlCategory" runat="server" onchange="OnDropDownListChange();" />    
function OnDropDownListChange(){
   var selectmenu = document.getElementById("<%=ddlCategory.ClientID%>");
  var chosenoption = selectmenu.options[selectmenu.selectedIndex];
 //Controls which are to hidden or visible
 var strCtrlIds =    "<%=lblOrderNumber.ClientID%>,<%=txtOrderNumber.ClientID%>,<%=btnGetOrderNumber.ClientID%>,<%=txtItemNumber.ClientID%>";
 if (chosenoption.value != "Dry End - Single Stack") {
     debugger;
     ToggleGivenControl(strCtrlIds, false);

 }
 else {
     ToggleGivenControl(strCtrlIds, true);
 }
}
于 2012-12-17T08:04:06.933 に答える