我需要在循环中停止重复,因为我得到重复的div 10次:
out = '';
for(var p in outData){
for(var key in p){
out += '<div id="'+p+'">'+outData[p]["message"]+' - '+outData[p]["xxx"]+'</div>';
}
}
$( element ).prepend(out);
来自json的:
outData = {
"1439335276":{"message":"fg","xxx":"xxx"},
"1439335668":{"message":"fgx","xxx":"xxx"},
"1439335675":{"message":"fgxccc","xxx":"xxx"}
}
实际上我得到了正确的数据,我只需要停止复制......我做错了什么?
实际结果:
<div id="1439335276">fg - xxx</div>
... x10
<div id="1439335668">fgx - xxx</div>
... x10
<div id="1439335675">fgxccc - xxx</div>
... x10
理想的结果:
<div id="1439335276">fg - xxx</div>
<div id="1439335668">fgx - xxx</div>
<div id="1439335675">fgxccc - xxx</div>
答案 0 :(得分:0)
你有一个额外的嵌套循环,删除内部循环
for(var p in outData){
out += '<div id="'+p+'">'+outData[p]["message"]+' - '+outData[p]["xxx"]+'</div>';
}
的 DEMO 强>
答案 1 :(得分:0)
你有一个太多的循环
var out = '';
for(var p in outData){
out += '<div id="'+p+'">'+outData[p]["message"]+' - '+outData[p]["xxx"]+'</div>';
}
给出:
<div id="1439335276">fg - xxx</div>
<div id="1439335668">fgx - xxx</div>
<div id="1439335675">fgxccc - xxx</div>
答案 2 :(得分:0)
根据JSON,JSON不正确或任何JS变量名称应以_或字母开头。并且你不需要内循环,但你的调用最终代码是
out = '';
for(var p in outData){
out += '<div id="'+p+'">'+outData[p]["message"]+' - '+outData[p]["xxx"]+'</div>';
}
$( element ).prepend(out);