如何从JQuery中的JSON字符串中获取JSON内容?

时间:2011-09-07 10:06:44

标签: jquery json

我的JSON字符串(这是我在$ .post中发出请求后得到的) -

{"email":"bill gates"}
{"email":"steve jobs"}
{"email":"mark zuckerberg"}
{"email":"cristiano ronaldo"}
{"email":"wayne rooney"}

我用来获取内容的代码 -

$(document).ready(function() {
    var data = new Object();
    data.email = "yash.mathur13@gmail.com";
    var dataString = $.toJSON(data);
    $.post('templates/chat.php', {
        data: dataString
    }, function(json) {
$("body").append(json);
    });
});

我想在<li>标记中显示每一个。

3 个答案:

答案 0 :(得分:1)

尝试类似的东西:

var list = "<ul></ul>";
$.each(json, function(idx, value) {
    list.append("<li>" + value.email + "</li>");
});
$("body").append("list");

答案 1 :(得分:1)

看看http://api.jquery.com/jQuery.parseJSON/

应该能够做到

 var obj = $.parseJSON(json);
 $.each(obj, function(index, item){
     // append to your <ul> if it already exists, or build one up
     $('ul').append('<li>' + item.email + '</li>');
 });

答案 2 :(得分:0)

您通常不需要使用jQuery手动将内容编码为JSON。

以下Javascript是否有效?

$(document).ready(function() {
    var data = new Object();
    data.email = "yash.mathur13@gmail.com";
    $.post('templates/chat.php', data, function(response) {
        $("body").append('<ul>' + response.map(function(elm) {
            return '<li>' + elm + '</li>';
        }).join('') + '</ul>');
    });
});