日期:2014-05-18  浏览次数:20438 次

C#中判断DropDownList的选中值
我在页面添加了一个DropDownList和一个文本框,但页面加载时文本框设为不能用,我希望DropDownList选中“其他”时,文本框变为可用状态,这个判断语句该怎么写?还有就是DropDownList的DataTextField和DataValueField是不一样的,只是不晓得怎么判断?

------解决方案--------------------
if(DropDownListName.SelectedItem.Text=="其他")
TextBoxName.Enabled = true;

------解决方案--------------------
更正一下,误删了个=号

if(DropDownList1.SelectedItem.Text=="其他")
TextBox1.Enable=true;
------解决方案--------------------
DropDownList1的slectedindexchange时间里面判断:
if(DropDownList1.SelectedItem.Text=="其他")
TextBox1.Enable=true;
------解决方案--------------------
服务器端方法:
HTML code

<form id="form1"  runat="server">
   <asp:DropDownList ID="DropDownList1" runat="server"  AutoPostBack="true"
       onselectedindexchanged="DropDownList1_SelectedIndexChanged">
      <asp:ListItem Text="aa" Value="1"></asp:ListItem>
      <asp:ListItem Text="其它" Value="0"></asp:ListItem>
   </asp:DropDownList>
   <asp:TextBox ID="TextBox1" runat="server" Enabled="false"></asp:TextBox>
</form>

------解决方案--------------------
楼上的各位都是在跟你解决第一个问题,我跟你说说第二个问题,DataTextField和DataValueField这是两个不同的属性,不是同一个概念,DataTextField这个是我们在dropdownlist中看到的东西,比如你说的那个“其他”,这个就是打她textField中的东西,而每一个DataTextField都有唯一一个对应值,这个值就是DataValueField,不过一般情况下,如果没有设置,默认情况下,两个是相同的,但是设置过后,两个是不同的东西
------解决方案--------------------
双击你的DropDownList后会触发一个selectIndexChange事件(记不清了 大概就是那个事件),然后如下代码就可以,放在ajax控件中禁止服务器刷新整体页面也不错,,,
if(DropDownListName.Text=="其他")//这个和DropDownList1.SelectedItem.Text什么区别?
TextBoxName.Enabled = true;