【发布时间】:2017-04-04 08:49:43
【问题描述】:
我正在处理一个搜索结果表单,我需要根据用户对单选按钮的选择来显示/隐藏列表值。如果用户选中“销售”单选按钮,则只有名为“销售”的 li 类将显示在下拉菜单中。如果用户选中“出租”单选按钮,则只有标记为“出租”的 li 类将显示在下拉菜单中。
这是我的代码:
单选按钮:
<input type="radio" onchange="allItemsDisplay(this.value);" name="search_type" value="Sales" <?php if($_SESSION['search_type'] == "Sales") { echo 'checked';} else { echo " ";}?>/>
<input type="radio" onchange="allItemsDisplay(this.value);" name="search_type" value="Rentals" <?php if($_SESSION['search_type'] == "Rentals") { echo 'checked';} else { echo " ";}?> />
下拉菜单:
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
<ul id="allItems" class="dropdown-menu">
<li><input type="hidden" name="price" value="<?php if($_SESSION['price'] == "") { echo "";} else { echo $_SESSION['price'];}?>"></li>
<li class="Sales"><a data-value="">Min Price</a></li>
<li class="Sales"><a data-value="10000">10,000</a></li>
<li class="Sales"><a data-value="20000">20,000</a></li>
<li class="Sales"><a data-value="30000">30,000</a></li>
<li class="Rentals" style="display:none"><a data-value="">Min Price</a></li>
<li class="Rentals" style="display:none"><a data-value="100">100</a></li>
<li class="Rentals" style="display:none"><a data-value="200">200</a></li>
<li class="Rentals" style="display:none"><a data-value="300">300</a></li>
</ul>
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
<ul id="allItems1" class="dropdown-menu">
<li><input type="hidden" name="maxprice" value="<?php if($_SESSION['maxprice'] == "") { echo "";} else { echo $_SESSION['maxprice'];}?>"></li>
<li class="Sales"><a data-value="">Max Price</a></li>
<li class="Sales"><a data-value="10000">10,000</a></li>
<li class="Sales"><a data-value="20000">20,000</a></li>
<li class="Sales"><a data-value="30000">30,000</a></li>
<li class="Rentals" style="display:none"><a data-value="">Max Price</a></li>
<li class="Rentals" style="display:none"><a data-value="100">100</a></li>
<li class="Rentals" style="display:none"><a data-value="200">200</a></li>
<li class="Rentals" style="display:none"><a data-value="300">300</a></li>
</ul>
JS 触发显示/隐藏:
function allItemsDisplay(thsVal){
$('#allItems').children().css('display','none');
$('#allItems').children('.' + thsVal).css('display','');
$('#allItems1').children().css('display','none');
$('#allItems1').children('.' + thsVal).css('display','');
}
页面加载的默认行为是“销售”值显示在下拉菜单中,但如果存储了“租赁”单选按钮的 SESSION 数据,我需要“租赁”值显示在页面加载中用户之前检查过吗?
【问题讨论】:
-
请为您的代码添加 js fiddle 或 sn-p
标签: javascript jquery drop-down-menu