用产品的属性数据说明
页面里显示效果为:要把产品的属性显示到页面上,产品属性为后台自主上传产品的属性,产品的属性不同,所以需要把属性和属性值显示到页面上
产品属性数据为:
properties: "[
{"表面处理":["发黑","发白"]},
{"颜色":["红色","黄色"]},
{"大小":["10mm","20mm"]}
]"
html代码为:
<div class="row" v-for="(val, name, index) in properties" :key="index"> <!--循环外层数据-->
<div v-for="(pro,key,index) in val" :key="index"> <!--显示key,属性-->
<div class="left">
<p>{{key}}</p>
</div>
<div class="center showHeight">
<p class="spec filterorder shuxing" id="proper0">
<span data-id="0" class="active">全部</span>
<span data-id="" v-for="(val,i) in pro">{{val}}</span> <!--属性有多个,循环多个属性显示到页面-->
</p>
</div>
<div class="right" onclick="attrmore(this)">
<img src="img/genduo.png" style="display: none;">
</div>
</div>
</div>
1.重点记录一下类似于jquery中的key 与 value的显示
以下是vue的写法
val:{"表面处理":["发黑","发白"]}<div v-for="(pro,key,index) in val" :key="index"> <!--显示key,属性-->
<div class="left">
<p>{{key}}</p><p>{{por}}</p></div>
</div>
2以下的例子jQuery的写法
//加载属性 function propertieslist(data) { var properties=data.t.goodsInfo.properties; var proper=JSON.parse(properties); var attrrow=''; var valueattr=''; $("#gcipList").children().remove(); var gcipTu = ' <div class="gcipTu"> ' + ' <img src="'+data.t.goodsInfo.mainPhotoUrl+'" alt=""> ' + ' </div><div class="row titlenow" id="titlenow"></div>'; $("#gcipList").append(gcipTu); $.each(proper,function (i,obj) { var Ospan='<span data-id="0" class="active">全部</span>'; for (key in obj){ attrrow='<div class="row"> ' + ' <div class="left"> ' + ' <p>'+key+'</p> ' + ' </div> ' + ' <div class="center showHeight"> ' + ' <p class="spec filterorder shuxing" id="proper'+i+'"> ' + ' </p> ' + ' </div> ' + ' <div class="right" onclick="attrmore(this)"> ' + ' <img src="img/genduo.png"> ' + ' </div> ' + ' </div>'; //obj[key]当属性值为汉字时 甜 辣 就是数组 当属性值为英文字母时 就是字符串 需要再次切割 if (obj[key].constructor == Array){//判断属性的属性值是不是数组 如果属性值有多个,就是数组就可以遍历不会报错,如果是一个就不是数组 $.each(obj[key],function (j,tbj) { Ospan+='<span data-id="'+key+'">'+tbj+'</span>'; }) }else if (obj[key].constructor == String){ $.each(obj[key].split(","),function (j,tbj) { Ospan+='<span data-id="'+key+'">'+tbj+'</span>'; }) } else { Ospan+='<span data-id="'+key+'">'+obj[key]+'</span>'; } } $("#gcipList").append(attrrow); $('#proper'+i).append(Ospan); });