我有选择我想用它作为ul li但是当我使用ul li时它不起作用。
这是我的代码:
<select class="order" onchange ="sortex();">
<option <?php if($order==1){echo "selected='selected'";} ?> value="1">Up to Low</option>
<option <?php if($order==2){echo "selected='selected'";} ?> value="2">Low to High</option>
<option <?php if($order==3){echo "selected='selected'";} ?> value="3">A to Z </option>
<option <?php if($order==4){echo "selected='selected'";} ?> value="4">Z to A </option>
</select>
这是我的功能:
function sortex(){
myurl='<?php echo $link; ?>';
val=$(".order").val();
order='?order='+val;
finalurl= myurl+order;
window.location.replace(finalurl);
}
我想在 ul li class 中使用它,但是当我使用ul li时它就不起作用了!
这是我的代码:
<ul class="dropdown-menu dropdown-menu-right dropdown-menu-wide">
<li <?php if($order==1){echo "selected='selected'";} ?> value="1">Up to Low </li>
<li <?php if($order==2){echo "selected='selected'";} ?> value="2">Low to High </li>
<li <?php if($order==3){echo "selected='selected'";} ?> value="3">A to Z </li>
<li <?php if($order==4){echo "selected='selected'";} ?> value="4">Z to A </li>
</ul>
如何在ul li中使用它?问题是当我使用ul li时,数据信息将不会被排序,但是当我使用select选项时,它运行良好,数据将被排序。
提前致谢
答案 0 :(得分:0)
您尝试做的似乎是使用Bootstrap's Dropdowns替代select
标记。也许你想要一个比默认的无样式选择元素更好看的选择。
可悲的是,Bootstrap的下拉列表不应该作为选择元素;它只分组一堆链接。但是,如果您在每个元素上使用onclick
来调用排序函数,则可以执行您想要的操作:
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Sort
</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="#" onclick="sortex(1);">Up to low</a>
<a class="dropdown-item" href="#" onclick="sortex(2);">Low to high</a>
</div>
</div>
您必须更改功能:
function sortex(sortBy){
var myurl='<?php echo $link; ?>';
var order='?order='+sortBy;
var finalurl= myurl+order;
window.location.replace(finalurl);
}
我不推荐这个,因为这并不支持&#34;选择&#34;价值,因为(再次),这个Dropdown不应该像这样使用!
所以只需坚持使用默认的select标签,或者如果你真的想要一个更好的Select标签,就可以搜索一个创建风格化选择元素的库。