在json中常常碰到這樣的代碼:
jquery $.each(data, function (index, value) {
})
遍歷處理data,可以是數組、DOM、json等,取決於直接給定或者ajax返回的類型
function (index, value)中index是當前元素的位置,value是值。
// each處理一維數組
var
arr1 = [
"aaa"
,
"bbb"
,
"ccc"
];
$.each(arr1,
function
(i,val){
alert(i);
alert(val);
});
// 處理json數據,例如ajax的返回值
var
obj = { one:1, two:2, three:3};
$.each(obj,
function
(key, val) {
alert(key);
alert(val);
});
$.each({a:3,b:'g'},function(index,value){alert('屬性'+ index+ '的值是'+value);});
-----------------------------------------------------------------------------------------------------------------------
JQuery .each(function(i){怎么往里帶參數?})
<script>
var xm=123,xt=456,xs=789;
$("ul li").each(function(i){
alert("i:"+i+" , xm:"+xm+" , xt: "+xt +" , xs: "+xs);
})
</script>
這就是,會對ul下的所有的li 進行循環:function里的i 是循環到的第幾個li
第一個i的之后輸出alert;第二個、第三個i 如此
-------------------------------------------------------------------------------------------
解析復雜的json時:
var color_ary=[{'id':'red','code':'01'},{'id':'blue','code':'02'},{'id':'green','code':'03'},{'id':'yellow','code':'04'},
{'id':'black','code':'05'},{'id':'white','code':'06'},{'id':'orange','code':'07'}];
$.each(color_ary,function(index,item){a4+=item.id+":"+item.code+",";});
//當數據為json格式時,可以如此來解析此json//這2種方法還是66的
$.each(color_ary,function(index,item){a5+=color_ary[index].id+":"+color_ary[index].code+",";});
//當數據為json格式時,也可以如此來解析此json
1.例如后台返回的json數據如下
[{'id':"1","name":"2","user":{"name":"2","age":"18"}},{'id':"2","name":"2","user":{"name":"2","age":"18"}}]
2.前台解析代碼如下
var obj = eval(s);
進行格式的轉化,然后就能采用點運算符去取值,如obj[0].user.name;取出結果是2
---------------------------------------------------------------------------------------------------------------
$(function(){
$("#zhanshi input").click(function(){
alert("sda");
$("#ziliaoku_hero table").css("display","none");
$.ajax({
//傳輸方式
type:"post",
url:"herofenlei",
data:{"fenlei":$("#zhanshi input").val()},
dataTpye:"json",
success:function(data){
var json=eval(data);
var con;
$.each(json,function(index,item){
var s1=json[index].heroHear;
var s2=json[index].herowaihao;
con+="<td ><img src='"+s1+"' width='64px' height='64px' /><p style='font-size: 15px;'>"+s2+"</p></td>";
});
console.log(con);
$("#zhanshi11").html(con);
}
});
});
});