これは私の 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)"
ボタン付きのフォームを使用する場合に使用されるように、コードはイベントを停止していません。