日期:2014-05-17  浏览次数:20654 次

如何在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 );