我正在使用一个使用javascipt禁用的asp.net下拉列表控件,当我尝试检索值服务器端时,在回发时设置了默认值。
这是一个Web项目,我使用VS2008。
答案 0 :(得分:1)
标准问题/答案:你是否在每次回发时都将你的Dropdown数据绑定?! 如果是这样,请在Page.Load。中检查页面的IsPostback属性。
答案 1 :(得分:0)
使用javascript禁用服务器端控件可能导致在服务器解码视图状态时不包含控件。您可能需要使用HiddenControl
来确保存储该值。
或者,您可以使用css隐藏下拉菜单,而不是禁用它。然后该值仍将存在于回发中。这可能不是很好的界面设计,等等。
答案 2 :(得分:0)
您可以在提交表单时启用下拉列表,即:
function enable() {
document.getElementById("ddl").removeAttribute("disabled");
}
<form id="form1" runat="server" onsubmit="enable();">
这样对我有用。
答案 3 :(得分:0)
Cofiem是对的。使用这样的东西:
div1.style.display = 'block';
div2.style.display = 'none';