jquery list对象排序
json返回的数据,里面是id,name,price的数据,做的时候返回的是按照id排序的,我想问下怎么按照price排序。这是我写的方法。varurl="/star/l...
json返回的数据,里面是id,name,price的数据,做的时候返回的是按照id排序的,我想问下怎么按照price排序。这是我写的方法。
var url="/star/list.json";
$.ajax({
url:url,
type:"get",
dataType:"json",
data:{
},
success: function(data){
if(data.state==0){
var ds = data.content.data;
var len = ds.length;
var html = '<tr>'
+'<td>id</td>'
+'<td>name</td>'
+'<td>address</td>'
+'<td>content</td>'
+'<td>age</td>'
+'<td>操作</td>'
+'</tr>';
for(var i=0;i<len;i++) {
var d = ds[i];
html += '<tr id="tr'+d.id+'">'
+'<td>'+d.id+'</td>'
+'<td>'+d.name+'</td>'
+'<td>'+d.address+'</td>'
+'<td>'+d.content+'</td>'
+'<td>'+d.age+'</td>'
+'<td><a href="javascript:deletestar('+d.id+');">删除</a>|<a href="toedit.html?id='+d.id+'" target="_blank">去修改</a></td>'
+'</tr>';
}
$('#data').html(html);
} else {
alert(data.message);
}
}
}); 展开
var url="/star/list.json";
$.ajax({
url:url,
type:"get",
dataType:"json",
data:{
},
success: function(data){
if(data.state==0){
var ds = data.content.data;
var len = ds.length;
var html = '<tr>'
+'<td>id</td>'
+'<td>name</td>'
+'<td>address</td>'
+'<td>content</td>'
+'<td>age</td>'
+'<td>操作</td>'
+'</tr>';
for(var i=0;i<len;i++) {
var d = ds[i];
html += '<tr id="tr'+d.id+'">'
+'<td>'+d.id+'</td>'
+'<td>'+d.name+'</td>'
+'<td>'+d.address+'</td>'
+'<td>'+d.content+'</td>'
+'<td>'+d.age+'</td>'
+'<td><a href="javascript:deletestar('+d.id+');">删除</a>|<a href="toedit.html?id='+d.id+'" target="_blank">去修改</a></td>'
+'</tr>';
}
$('#data').html(html);
} else {
alert(data.message);
}
}
}); 展开
3个回答
展开全部
使用SORT进行排序。
示例如下:
<body>
<div>
sort()对数组排序,不开辟新的内存,对原有数组元素进行调换
</div>
<div id="showBox">
1、简单数组简单排序
<script type="text/javascript">
var arrSimple=new Array(1,8,7,6);
arrSimple.sort();
document.writeln(arrSimple.join());
</script>
</div>
<div>
2、简单数组自定义排序
<script type="text/javascript">
var arrSimple2=new Array(1,8,7,6);
arrSimple2.sort(function(a,b){
return b-a});
document.writeln(arrSimple2.join());
</script>
解释:a,b表示数组中的任意两个元素,若return > 0 b前a后;reutrn < 0 a前b后;a=b时存在浏览器兼容
简化一下:a-b输出从小到大排序,b-a输出从大到小排序。
</div>
<div>
3、简单对象List自定义属性排序
<script type="text/javascript">
var objectList = new Array();
function Persion(name,age){
this.name=name;
this.age=age;
}
objectList.push(new Persion('jack',20));
objectList.push(new Persion('tony',25));
objectList.push(new Persion('stone',26));
objectList.push(new Persion('mandy',23));
//按年龄从小到大排序
objectList.sort(function(a,b){
return a.age-b.age});
for(var i=0;i<objectList.length;i++){
document.writeln('<br />age:'+objectList[i].age+' name:'+objectList[i].name);
}
</script>
</div>
<div>
4、简单对象List对可编辑属性的排序
<script type="text/javascript">
var objectList2 = new Array();
function WorkMate(name,age){
this.name=name;
var _age=age;
this.age=function(){
if(!arguments)
{
_age=arguments[0];}
else
{
return _age;}
}
}
objectList2.push(new WorkMate('jack',20));
objectList2.push(new WorkMate('tony',25));
objectList2.push(new WorkMate('stone',26));
objectList2.push(new WorkMate('mandy',23));
//按年龄从小到大排序
objectList2.sort(function(a,b){
return a.age()-b.age();
});
for(var i=0;i<objectList2.length;i++){
document.writeln('<br />age:'+objectList2[i].age()+' name:'+objectList2[i].name);
}
</script>
</div>
</body>
展开全部
举个例子:
var arr=[
{price:12},
{price:5},
{price:2},
{price:512},
{price:182}
];
arr.sort(function(a,b){
return a.price-b.price;
});
console.log(arr)
这样就可以了,arr是你的数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
三十三、JQuery简介+选择器
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询