这是我的ASP.NET页面的一部分。在某些选项上禁用事件/刷新下拉列表
<asp:DropDownList ID="DropDownList1" runat="server"
OnChange="return ListChange(this.value)"
onselectedindexchanged="DropDownList1_SelectedIndexChanged1"
AutoPostBack="True" >
<asp:ListItem Selected="True">Today</asp:ListItem>
<asp:ListItem>Yesterday</asp:ListItem>
<asp:ListItem Value="1">Specific Day</asp:ListItem>
<asp:ListItem>All Time</asp:ListItem>
</asp:DropDownList>
<asp:TextBox ID="txtDate" runat="server"></asp:TextBox>
这是Javascript。
function ListChange(txtVal) {
if (txtVal != 1) {
document.getElementById("txtDate").setAttribute("style", "visibility:hidden;");
return true;
}
else {
document.getElementById("txtDate").setAttribute("style", "visibility:visible;");
return false;
}
}
这里的目标是根据用户选择的选项显示某些数据。在特定日期选项中,向用户显示文本框以通过javascript插入日期。但是onselectedindexchanged
事件也引发了对服务器的调用。我想在选择“特定日期”选项时停止事件,但在选择其他选项时运行。
OnChange="return ListChange(this.value)"
上的代码并未停止使用带有按钮的表单时使用的事件。
理想情况下,它应该工作,你尝试通过改变它像onchange =“Javascript:return ListChange(this.value);” –
即停止所有选项的事件:/ – Ruchan