Javascript 如何为客户端使用下拉列表?

Javascript 如何为客户端使用下拉列表?,javascript,asp.net,visibility,html-select,Javascript,Asp.net,Visibility,Html Select,我是Asp.net新手 我正在创建一个有下拉列表和其他控件的网站 每当我更改下拉选择的索引时,如果它等于项中的一项,则我要显示控件如果它不等于,则我要隐藏这些控件 在这里,我尝试了这个代码,但没有得到 var selectmenu = document.getElementById("<%=ddlCategory.ClientID%>"); var chosenoption = selectmenu.options[selectmenu.selectedIndex];

我是Asp.net新手

我正在创建一个有
下拉列表和其他控件的网站

每当我更改下拉选择的索引时,如果它等于
中的一项,则我要显示控件如果它不等于,则我要隐藏这些控件

在这里,我尝试了这个代码,但没有得到

  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.
     }
var selectmenu=document.getElementById(“”);
var chosenoption=selectmenu.options[selectmenu.selectedIndex];
//要隐藏或可见的控件
var strCtrlIds=“lblOrderNumber,txtOrderNumber,btnGetOrderNumber,lblItemNumber,txtItemNumber,lblReason,txtReason,lblMaterial,txtDescription”;
if(chosenoption.value!=“干端-单堆栈”){
调试器;
切换GivenControl(strCtrlIds,false);
}
否则{
切换GivenControl(strCtrlIds,true);
}
/**********************************************************
切换显示结束堆栈选项
************************************************************/
功能切换GivenControl(strCtrlIds,blnIsVisible){
调试器;
var ctrls=strCtrlIds.toString().split(“,”);
var strCtrlId='';
对于(var intCnt=0;intCnt
我的asp.net代码是

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

....
有一件事是我将下拉列表与数据源绑定在一起


有谁能解决我的问题吗?

我想我是这样想的

<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);
 }
}

函数OnDropDownListChange(){
var selectmenu=document.getElementById(“”);
var chosenoption=selectmenu.options[selectmenu.selectedIndex];
//要隐藏或可见的控件
var strCtrlIds=“,”;
if(chosenoption.value!=“干端-单堆栈”){
调试器;
切换GivenControl(strCtrlIds,false);
}
否则{
切换GivenControl(strCtrlIds,true);
}
}