嘿,我有一个json_encode,我试图循环并显示输出但它不工作,我没有输出= /
这是我的小提琴: http://jsfiddle.net/Z4jTc/1/
有人可以解释为什么它不会循环吗?
代码:
var messages = {"1":["2","1","0000-00-00 00:00:00","testing once"],"2":["2","1","0000-00-00 00:00:00","testing twice :)"]};
for(var id in messages){
var read = messages[id][0];
var from = messages[id][1];
var sent_on = messages[id][2];
var content = messages[id][3];
document.write = 'test';
document.write = '<div class="message_info">';
document.write = '<b>From:</b> '+from+'<br/><br/>';
document.write = '<b>Sent On:</b> '+sent_on;
document.write = '</div><div class="message_content">';
document.write = content;
document.write = '</div> <br/><br/>';
}
答案 0 :(得分:3)
你不断覆盖document.write
函数,你实际上从未调用它。
document.write("test");
应该如何使用。
答案 1 :(得分:1)
这么多的document.write很慢。解析对象后,您可以在一个调用中执行此操作:
var messages = {"1":["2","1","0000-00-00 00:00:00","testing once"],"2":["2","1","0000-00-00 00:00:00","testing twice :)"]};
var output = [];
for(var id in messages){
var read = messages[id][0];
var from = messages[id][1];
var sent_on = messages[id][2];
var content = messages[id][3];
output.push('test');
output.push('<div class="message_info">');
output.push( '<b>From:</b> '+from+'<br/><br/>');
output.push('<b>Sent On:</b> '+sent_on);
output.push('</div><div class="message_content">');
output.push(content);
output.push('</div> <br/><br/>');
}
document.write(output.join(''));
...或将输出放在页面上的容器中......
document.getElementById('destinationContainer').innerHTML(ouput.join(''));
答案 2 :(得分:0)
document.write
是一个函数
使用
document.write('test');
而不是
document.write = 'test';