這是我的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