例如现在前台有很多条数据!1 ........... 评分 5
2 ........... 评分 2
3 ........... 评分 3
4 ........... 评分 4还有两个单选框<input name="" type="radio" value="" />按评分从高到低
<input name="" type="radio" value="" />按评分从低到高
要求点击相应的单选框时,这些数据就按相应的顺序排列
2 ........... 评分 2
3 ........... 评分 3
4 ........... 评分 4还有两个单选框<input name="" type="radio" value="" />按评分从高到低
<input name="" type="radio" value="" />按评分从低到高
要求点击相应的单选框时,这些数据就按相应的顺序排列
<script>
var numArr = new Array(12,23,1,4,23,34,2,5);
numArr.sort(function compare(a,b){return a-b;});
for (var i = 0; i<numArr.length; i++) {
document.write(numArr[i] +"<br>");
}
</script>把value用变量来表示就可以了(即numArr(i))
<div id="div1">
1............
</div>
<div id="div2">
2............
</div>
<div id="div3">
3...........
</div>
<div id="div4">
4...........
</div>
<div id="div5">
5............
</div>
</div>
<input type="radio" name="rsort" value="1" onclick="sortdiv(1);" />倒序排列
<input type="radio" name="rsort" value="2" onclick="sortdiv(0);" />正序排列
<script language="javascript">
//利用下表排序
function sortdiv(s)
{
var panel = document.getElementById("panel")
var divlist = panel.childNodes; //获取所有子元素
var hashlist = {};//哈希表,存储所有子对象
var ids = new Array();
for (var i = 0; i < divlist.length; i++)
{
ids.push(divlist[i].id);
hashlist[divlist[i].id] = divlist[i];
}
//排序
ids.sort();
if (s == 1)
ids.reverse(); //清空panel
for (var i = 0; i < ids.length; i++)
{
panel.appendChild(hashlist[ids[i]]);
}
}
</script>
这样做不行吗?