帮助从json编码数据中追加html数据

时间:2011-04-12 00:08:19

标签: jquery json append

我无法从json字符串中获取html数据,以便在jquery post之后正确追加。

我遇到的问题是没有从html中删除斜杠,因此选择列表没有显示,而且html输出不正确。我试过在

之后解析数据

这是我的json字符串:

{"type":"success","list":"<li id=\"item-1><p>Test<\/p><p><select name=\"steps\">\n<option value=\"3\">Step 1<\/option>\n<option value=\"2\">Step 2<\/option>\n<option value=\"6\">Step 3<\/option>\n<option value=\"5\">Step 5<\/option>\n<\/select><\/p><\/li><li id=\"item-18><p>Testinggg<\/p><\/li>"}

以下是它的创建方式:

jQuery.ajax({
    success: function(data) {
        if (data)
        {
            if(data.type =='success') {
                jQuery("#item-list").append(data.list);
            }
        }
    },
    type: 'POST',
    data: {items: JSON.stringify(data)},
    dataType: 'json',
    url: "/action/create/" 
});

并在php中:

$data = array(
    'type' => 'success',
    'list' => $list
);

echo json_encode($data);

1 个答案:

答案 0 :(得分:1)

没有人恐慌,只是一个语法错误

您在第1项和第18项之后的数据中错过了结束\"。这会导致在附加到DOM时出现解析错误。添加其中的工作正常:http://jsfiddle.net/RMnLG