我环顾四周,没有发现任何具体的东西。
是否有任何关于如何根据是否选择值来显示/隐藏表单或文本框的教程。
我有类似这个下拉框的东西(添加,项目1,项目2,项目3等..)
如果选择了添加,则显示要添加的表单,添加一些属性,例如(名字,姓氏等),否则它只会对所选项目执行操作。
我环顾四周,没有发现任何具体的东西。
是否有任何关于如何根据是否选择值来显示/隐藏表单或文本框的教程。
我有类似这个下拉框的东西(添加,项目1,项目2,项目3等..)
如果选择了添加,则显示要添加的表单,添加一些属性,例如(名字,姓氏等),否则它只会对所选项目执行操作。
我会在客户端代码中连接它。在 JavaScript 或 jQuery 中处理 select 的onchange
事件并将处理程序绑定到它。由于“ Add ”是唯一会显示表单的选项,因此在您的处理程序中检查选定的值,如果它是“ Add ”的值,则显示表单。如果它是任何其他值,则隐藏表单。
如果您想在服务器代码中执行此操作,只需处理选择更改的事件并以这种方式设置表单的可见性属性。无论哪种方式都应该很容易。
在客户端上执行此操作可以避免围绕回发进行编码,同时消除处理来自服务器的请求的责任。
<select id="target">
<option value="option1" selected="selected">Add</option>
<option value="option2">Item1</option>
</select>
<input type="text" class="textboxclass" />
<div class="someform">
//content
</div>
某个类的默认 css 显示属性为无,例如:
.someform{display:none;}
jQuery脚本
<script>
$('#target').change(function() {
var name = $('#target option:selected'),text(); //Item1
var id = $('#target').val(); // option2
if(id =="option2"){
//your logic for this option
//hide textbox
$('.textboxclass').hide();
$('.someform').show();
}else{
$('.textboxclass').show();
$('.someform').hide();
}
//other if else logic
});
</script>
因为我在笔记本电脑上没有安装任何软件,所以没有测试过。
如果您想从服务器端执行此操作,您需要将 DrowpDown 列表的 AutoPostBack 属性设置为 true,
并在 DropdownList 的 SelectedIndexChanged 事件中
试试这个,
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownList1.SelectedIndex == 0)
{
entryForm.Visible = true;
viewForm.Visible = false;
}
else if (DropDownList1.SelectedIndex == 1)
{
entryForm.Visible = false;
viewForm.Visible = true;
}
但这不是一个好的方法,我建议按照上面给出的答案,并使用 JavaScript 或 JQuery