为了清晰起见修改了问题:
我有解析json文件的问题。我想输出标记为“image_01”的基本名称的值。所以它只会输出http://blog.url/news/images/201516.jpg
<div id="placeholder"></div>
<script>
var data={
"items": [
{
"title": "This is The Title",
"customFields": [
{
"basename": "image_01",
"value": "<form mt:asset-id=\"352706\" class=\"mt-enclosure mt-enclosure-image\" style=\"display: inline;\"><a href=\"http://blog.com/news/images/20150116.jpg\">20150116.jpg</a></form>"
}
],
"permalink": "http://blog.com/index.php"
}
]
}
document.getElementById("placeholder").innerHTML=data.items[0].title + " " + data.items[0].permalink+"--"+ data.items[0].customFields.basename.image_01;
</script>
http://jsfiddle.net/v57s2csa/ 固定
我认为特别的问题在于
data.items [0] .customFields.basename.image_01;
答案 0 :(得分:1)
customFields
是一个数组。您需要使用索引访问其中的值。
document.getElementById("placeholder").innerHTML=data.items[0].title + " " + data.items[0].permalink+"--"+ data.items[0].customFields[0].basename;
// Change is here -------------------------------------------------------------------------------------------------------------------^^^
答案 1 :(得分:0)
将javascript替换为:
document.getElementById("placeholder").innerHTML=data.items[0].title + " "
+ data.items[0].permalink+"--"+ data.items[0].customFields[0].basename.image_01;
反映customFields
为array
,而不是object
。
答案 2 :(得分:0)
数据内部没有名为image_01的对象。而不是
data.items[0].customFields.basename.image_01;
使用
data.items[0].customFields[0].value
Form中的img标签,用于在追加后显示图像,
HTTP://blog.url/news/images/201516.jpg \“&GT; <img src='http://blog.url/news/images/201516.jpg'/>
&LT; / A&GT;&LT; /形式&GT;