RESTful API返回的JSON响应包含用于某些键的@符号,而其他键是以这种方式创建的(“ document.title”)。
我的JSON看起来像这样。
"fields": {
"document.content_type": [
"application/ms-word"
],
"document.name": [
"zh1.docx"
],
"@title": [
"The History of the Pencil"
],
"@date": [
"2016-01-13T07:30:25-0500"
],
"document.content": [
"some text goes here"
],
"@guid": [
"76c99131-23b1-4435-9b93-eaabd9e33a67"
]
}
在普通的JavaScript / jQuery中,我可以通过执行fields [“ @ title”] [0]以获取标题或通过fields [“ document.content”] [0]以获取文档内容来轻松访问这些值,但是这种格式可以在json2html转换中不起作用。
例如,此代码在转换中不起作用。
{"tag":"h4","html":"${fields['document.name'].0}"}
任何人都可以指出我如何在json / html转换中访问那些特殊的json标签。我知道在某些情况下可以将标签更改为更标准的格式,但是如果我不能更改标签或出于某些原因需要将其保留原样怎么办?
最佳答案
json2html转换将$ {}中的字符串分割为“。”。您可以更改键以与转换兼容,例如:
for(var k in data.fields){
if(k.match(/\./)){
data.fields[k.replace(/\./g, '_')] = data.fields[k];
}
}
Plunk
关于javascript - json2html如何处理json键中的特殊字符(例如@),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34769920/