在下拉列表中选择后显示文本框
问题描述:
只想问你们在这里,我有一个下拉列表框存储元素; A和B.当用户选择A时,它将在同一页面中显示5个文本框。只有当用户选择A和B时,它才会显示。如果你知道如何操作,请点击答案答案或评论按钮。 Thnks,祝你有美好的一天!在下拉列表中选择后显示文本框
答
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList1.SelectedItem.Text == "A")
{
TextBox1.Visible = true;
TextBox2.Visible = true;
TextBox3.Visible = true;
TextBox4.Visible = true;
TextBox5.Visible = true;
}
else
{
// do something
}
}
默认情况下,请确保您的Textbox
控制的Visible
属性设置为False
。 启用DropDownList
控件的AutoPostBack
至True
。
答
你可以用两种方法做到这一点。
通过使用javascript:
你textboxs被包括在与dispaly:none;
标记并且在那里dropdownselect显示属性设置为阻塞。
DropDownList.Attributes.Add("onChange", "return OnSelectedIndexChange();")
function OnSelectedIndexChange()
{
document.getElementById("TextBox1").style.display="block";
document.getElementById("TextBox2").style.display="block";
document.getElementById("TextBox3").style.display="block";
document.getElementById("TextBox4").style.display="block";
document.getElementById("TextBox5").style.display="block";
}
通过使用AJAX:
你textboxs有visible="false"
最初并在dropdownselect改变他们的财产visible="true"
。
protected void DropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList.SelectedItem.Text == "A")
{
TextBox1.Visible = true;
TextBox2.Visible = true;
TextBox3.Visible = true;
TextBox4.Visible = true;
TextBox5.Visible = true;
}
else
{
// do something
}
}
答
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
string txt = this.DropDownList1.SelectedValue;
switch (txt)
{
case "A":
TextBox1.Visible = true;
TextBox2.Visible = true;
TextBox3.Visible = true;
TextBox4.Visible = true;
TextBox5.Visible = true;
break;
case "do something":
do something
break;
}
}
在使用开关盒的帮助下,您可以添加尽可能多的条件。
如果您选择B,会发生什么? – abramlimpin 2012-07-13 03:29:15
[你有什么尝试?](http://whathaveyoutried.com/) – Bill 2012-07-13 03:32:22
downvoted一个非常不清楚的问题。 – 2012-07-13 03:33:13