在页面中显示json结果

时间:2013-09-23 13:00:52

标签: javascript jquery json

我有以下js脚本和html代码,并希望在页面上输出结果。当我在控制台中运行它时,我可以看到如下结果:

[对象{title =“他们没有弓;他们没有烧伤”,link =“http://xxxxxxx.com/bow-burn/”,作者=“管理员”,更多。 ..},对象{title =“当你最后一次对你生活的某些方面进行了反对?”,link =“http://xxxxxxx...significant-areas-life/”,author =“Admin”,更多...},对象{title =“婚姻在所有人中都是尊敬的......”,link =“http://xxxxxxx...arriage-honourable-all/”,author =“Admin”,more ...},对象{title =“住在上帝的要塞中”,link =“http://xxxxxxx...elling-strongholds-

html代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">

    <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame
    Remove this if you use the .htaccess -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <script src="css/style.css"></script>
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" />
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>
    <script src="js/script.js"></script>
</head>
<body>

    <div id="blog" data-role="page">
    <div data-role="header" class="sys_hd" data-position="fixed" data-id="sys_header" >
        <h1>Sysads Posts</h1>
        </div><!-- header -->
        <div data-theme="c" data-role="content" id="postlist"> </div><!-- content -->
        <div data-role="footer" data-position="fixed" data-id="sys_footer" >
                    <div data-role="navbar" >
                <ul>
                    <li><a href="#blog" class="sys_ft">Home</a></li>
                    <li><a href="#blog" class="sys_ft">Disclaimer</a></li>
                </ul>
            </div><!-- navbar --> 
        </div><!-- footer --> 
    </div><!-- page -->
</body>
</html>

js code:

$(document).ready((function(){
     url = 'http://xxxxxxxx.com/category/daily-devotion/feed/';
        $.ajax({
        type: "GET",
        url: document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=1000&callback=?&q=' + encodeURIComponent(url),
        dataType: 'json',
        error: function(){
            alert('Unable to load feed, Incorrect path or invalid feed');
        },
        success: function(xml){
            postlist = xml.responseData.feed.entries;
            console.log(postlist);
        }
    });
}));

5 个答案:

答案 0 :(得分:1)

json可能是畸形的。 http://json.parser.online.fr/说什么?

答案 1 :(得分:0)

尝试使用stringify方法:

JSON.stringfy(obj)

答案 2 :(得分:0)

尝试:

for(var i in postlist) {
   var obj = postlist[i];
   console.log("title >>>  "+obj.title);
   console.log("link>>>  "+obj.link);
   ...........//other properties
}

答案 3 :(得分:0)

您的问题并不完全清楚您要完成的内容,但是从标题和提供的代码中,我猜您要将检索到的条目添加到页面的“#postlist”部分。如果这是对的,你可以这样做:

success: function(xml){
    postlist = xml.responseData.feed.entries;

    $.each(postlist, function(entry){

         $('#postlist').append($('<div class="entry">' + entry.title + '</div>'));

    });    

}

显然,加上你喜欢的任何其他标记。

希望有所帮助。

答案 4 :(得分:0)

试试这个:

success: function(data ){
            var postlist = data.responseData.feed.entries;
            var html = '<ul data-role="listview" data-filter="true">' ;
            for (var i = 0 ; i < 10 ; i++) {
                var entry = postlist[i];
                html += '<li>';
                html += '<a href="' + entry.link + '">' ;
                html += '<div>' + entry.title + '</div>' ;
                html += '<div>' + entry.author + '</div>' ;
                html += '</a>';
                html += '</li>';
            }
            html += '</ul>';
           $( "#postlist" ).append(html);

        }});