5 つのドロップダウン リストから選択した同じ選択肢に応じて、いくつかの項目を表示および非表示にするスクリプトを作成しました。このドロップダウン リストからの選択はまったく同じです。だから私は自分のソリューションを単純化できるかどうかを確認していました
HTML:
<label for="ddlGift1">Gift #1</label>
<asp:DropDownList runat="server" ID="ddlGift1" AutoPostBack="true" AppendDataBoundItems="True" ClientIDMode="Static" >
<asp:ListItem Value="--" Text="--" />
</asp:DropDownList>
<label for="ddlGift2">Gift #2</label>
<asp:DropDownList runat="server" ID="ddlGift2" AutoPostBack="true" AppendDataBoundItems="True" ClientIDMode="Static" >
<asp:ListItem Value="--" Text="--" />
</asp:DropDownList>
<label for="ddlGift3">Gift #3</label>
<asp:DropDownList runat="server" ID="ddlGift3" AutoPostBack="true" AppendDataBoundItems="True" ClientIDMode="Static" >
<asp:ListItem Value="--" Text="--" />
</asp:DropDownList>
<label for="ddlGift4">Gift #4</label>
<asp:DropDownList runat="server" ID="ddlGift4" AutoPostBack="true" AppendDataBoundItems="True" ClientIDMode="Static" >
<asp:ListItem Value="--" Text="--" />
</asp:DropDownList>
<label for="ddlGift5">Gift #5</label>
<asp:DropDownList runat="server" ID="ddlGift5" AutoPostBack="true" AppendDataBoundItems="True" ClientIDMode="Static" >
<asp:ListItem Value="--" Text="--" />
</asp:DropDownList>
JS:
var gift1 = $('#ddlGift1');
var gift1 = $('#ddlGift1');
var gift2 = $('#ddlGift2');
var gift3 = $('#ddlGift3');
var gift4 = $('#ddlGift4');
var gift5 = $('#ddlGift5');
showHide();
gift1.change(function () {
showHide();
});
gift2.change(function () {
showHide();
});
gift3.change(function () {
showHide();
});
gift4.change(function () {
showHide();
});
gift5.change(function () {
showHide();
});
function showHide() {
var gift1 = $('#ddlGift1');
var gift2 = $('#ddlGift2');
var gift3 = $('#ddlGift3');
var gift4 = $('#ddlGift4');
var gift5 = $('#ddlGift5');
var vsity = $('#shvarsity');
if ((gift1.children("option:selected").text())||(gift2.children("option:selected").text())||(gift3.children("option:selected").text())||(gift4.children("option:selected").text())||(gift5.children("option:selected").text()) == "Varsity Club")
{
vsity.show();
} else {
vsity.hide();
}
}