如何在js中生成div的html代码,以用来替换jsp页面中的div
我在javaWeb项目中需要用ajax实现对如下列表的异步刷新:
时间 交叉口名称 交叉口流量 东进口 西进口 南进口 北进口
进口道流量 左转 直行 进口道流量 左转 直行 进口道流量 左转 直行 进口道流量 左转 直行
2012-4-23 7:00 萧林路/长江路 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552
2012-4-24 7:00 萧林路/长江路 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553
现在我已经从数据库取到了list,并已经把该list转换为json格式了,请问如何在js中将得到的json格式转化为需要的div,
document.getElementById("divid").innerHTML=“这里该怎么写?”
敬请详细介绍,多谢了,急用!!
------解决方案--------------------不知到你是否使用了jQuery,如果使用了的话,不妨试试jQuery的一模板引擎插件 jTemplates。这个也许对你有所帮助。
------解决方案--------------------这个 就最简单的JS啊 !!!!!
最简单的做法 就是 你的ajax请求 直接跳转到一个JSP把数据封装好 然后返回给调用页面
或者 麻烦点 就自己去用JS生成页面的代码通过createElement方式 也是一样
------解决方案--------------------
简单的可以这样,
比如json变量就是 ajax返回的值,参考下
HTML code
<!DOCTYPE HTML>
<html>
<head>
<meta charset="gb2312" />
<title></title>
<style>
</style>
</head>
<body>
<div id="test"></div>
<script>
var $ = function(id){
return document.getElementById(id);
};
var json = [
{
"name": "Tom",
"age": "34"
},
{
"name": "Jam",
"age": "24"
}
];
var html = '<ul>';
for(var i = 0, len = json.length; i < len; i++){
html += '<li>name: '+json[i].name+' age: '+json[i].age+'</li>';
}
html += '</ul>';
$('test').innerHTML = html;
</script>
</body>
</html>
------解决方案--------------------
使用eval, 楼主也可以搜下 json2.js
JScript code
var string = '[{"name": "Tom", "age": "32"}]';
var json = eval('('+string+')');
alert( json[0].name );