-1

我尝试了很多不同的方法,并使用了许多不同的 PHP 和 JS 函数来尝试实现这一点。锄头我把这个 json 对象;

"lines" :   ["text line 1<br/>","text line 2<br/>","text line 3<br/>","text line 4<br/>"]

进入这个字符串,这样我就可以添加到 HTMl div

text line 1<br/> text line 2<br/> text line 3<br/> text line 4<br/>

不,引号,括号或其他任何东西。

我所拥有的最简单的形式就是字符串化;

lines = JSON.stringify(obj.lines)

但上面的输出、括号、引号和逗号

抱歉,如果这是一个简单而愚蠢的问题,但是我(现在完成(尴尬!))已经到处搜索了一个简单的答案。没有什么突出的。

4

3 回答 3

3

查看Array.join

var html = obj.lines.join("");

示例:http: //jsfiddle.net/VXbs7/

于 2012-05-22T12:31:36.670 回答
0

一个 JSON 字符串。您需要将其解析为数据结构,然后获取字符串数组,然后循环遍历它们(随时输出)。

于 2012-05-22T12:30:01.743 回答
0

如果您是从 javascript 执行此操作,则非常简单。JSON 是 JavaScript 原生的,可以很简单地解释为一个对象。不过,看起来您的问题中只粘贴了一半的 JSON 对象。一个完整的 JSON 对象被包裹在[]or中{}(除非它只是一个字符串或数字类型,但它不是一个对象)。

无论如何,如果你在 PHP - 你可以轻松地json_decode()这个字符串并像这样循环它:

<?php
$arr = json_decode($json_string, true); //true makes it an array instead of object

foreach ($arr['lines'] as $line)
{
    echo $line;
}

如果您尝试在 javascript 中(在浏览器中)完成它,这也很容易(假设您的字符串存储在 php 变量中,并且您正在使用 jquery 进行 dom 操作)

<script type="text/javascript">
var obj = <?= $json_string; ?>,
    mydiv = $('#mydiv);

for (key in obj['lines'])
{
    var line = obj['lines'][key];
    mydiv.append(line);
}
</script>

这两个都应该给你你正在寻找的输出

于 2012-05-22T12:34:10.680 回答