是否可以在JSON中编写HTML字符串?
我想在我的JSON文件中编写如下代码:
[
{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": "<h2class="fg-white">AboutUs</h2><pclass="fg-white">developing and supporting complex IT solutions.Touchingmillions of lives world wide by bringing in innovative technology </p>"
}
]
答案 0 :(得分:25)
你应该通过添加&#34; \ &#34;
来转义html字符串中的双引号等字符例如:<h2 class=\"fg-white\">
答案 1 :(得分:6)
答案 2 :(得分:6)
在将html添加到JSON之前使用Base64算法编码html,并在阅读时使用Base64解码html。
byte[] utf8 = htmlMessage.getBytes("UTF8");
htmlMessage= new String(new Base64().encode(utf8));
byte[] dec = new Base64().decode(htmlMessage.getBytes());
htmlMessage = new String(dec , "UTF8");
答案 3 :(得分:3)
可以在JSON中编写HTML字符串。你只需要逃避双引号。
[
{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": "<h2class=\"fg-white\">AboutUs</h2><pclass=\"fg-white\">CSMTechnologiesisapioneerinprovidingconsulting,
developingandsupportingcomplexITsolutions.Touchingmillionsoflivesworldwidebybringingininnovativetechnology,
CSMforayedintotheuntappedmarketslikee-GovernanceinIndiaandAfricancontinent.</p>"
}
]
答案 4 :(得分:1)
一种方法是用单引号替换HTML中的双引号,但使用双引号已成为HTML中属性值的标准约定。
更好的选择是转义json和其他需要转义的字符中的双引号。
您可以在此处获取有关逃避的更多详细信息:Where can I find a list of escape characters required for my JSON ajax return type?
答案 5 :(得分:1)
可以说我正在尝试呈现以下HTML。
interface FooActionType {
type: "removeFOO" | "addFOO" | "updateFOO";
payload: any;
}
let myHTML = "<p>Go to this <a href='https://google.com'>website </b></p>";
这将为您提供一个HTML元素,您可以使用innerHTML进行设置。
赞这个
JSON.parse(JSON.stringify(myHTML))
人们将HTML存储为对象here。但是,我建议的方法无需使用Object即可执行相同的操作。
答案 6 :(得分:0)
最简单的方法是将HTML放在单引号内。修改后的json对象如下:
[
{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": '<h2 class="fg-white">AboutUs</h2><p class="fg-white">developing and supporting complex IT solutions.Touchingmillions of lives world wide by bringing in innovative technology </p>'
}
];
最好的方法是使用双引号和其他需要转义的字符。修改后的json对象如下:
[
{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": "<h2 class=\"fg-white\">AboutUs</h2><p class=\"fg-white\">developing and supporting complex IT solutions.Touchingmillions of lives world wide by bringing in innovative technology </p>"
}
];
答案 7 :(得分:0)
您可以将标识符设为查询选择器的参数。对于PHP和兼容语言,使用关联数组(实际上是对象),然后使用json_encode。
$temp=array('#id' =>array('href'=>'services.html')
,'img' =>array('src'=>"img/SolutionInnerbananer.jpg")
,'.html'=>'<h2 class="fg-white">AboutUs</h2><p class="fg-white">...</p>'
);
echo json_encode($temp);
但是如果没有一些JS,HTML就不会为你做这件事。
{"#id":{"href":"services.html"},"img":{"src":"img\/SolutionInnerbananer.jpg"}
,".html":"<h2 class=\"fg-white\">AboutUs<\/h2><p class=\"fg-white\">...<\/p>"}
答案 8 :(得分:0)
您也应该转义正斜线,这是正确的JSON:
[{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": "<h2class=\"fg-white\">AboutUs<\/h2><pclass=\"fg-white\">developing and supporting complex IT solutions.Touchingmillions of lives world wide by bringing in innovative technology <\/p>"
}]
答案 9 :(得分:0)
在JSON中放入HTML时必须做的4件事:
1)在HTML属性周围使用转义引号,例如
<img src=\"someimage.png\" />
2)在HTML结束标记中转义正斜杠。
<div>Hello World!<\/div>.
这是旧HTML规范的古老工件, 不想在将字符串放入HTML解析器时感到困惑<SCRIPT>
标签。由于某些原因,今天的浏览器仍然喜欢它。3)这完全是古怪的。您应该在之间添加一个空格 标签名称和自动关闭标签上的斜杠。我不知道为什么 这是,但是在大多数现代浏览器上,如果您尝试使用javascript来 将
<li>
标记附加为已格式化的无序列表的子代 像这样:<ul/>
,它将不起作用。它在ul之后被添加到DOM 标签。但是,如果代码如下所示:<ul />
(请注意空格 /)之前,一切正常。确实很奇怪。4)确保对可能包含在引号中的所有引号进行编码 (错误)HTML内容。这是唯一会真正打破 JSON意外地提早终止了字符串。任何
"
个字符 如果要包含为HTML,则应将其编码为"
内容。
答案 10 :(得分:0)
在json中,所有内容都是双引号之间的字符串“,因此,如果值出现错误(仅在直接写入中),则需要转义”,请使用反斜杠 \
以及包装在{}中的json文件中的所有内容 将您的json更改为
{
[
{
"id": "services.html",
"img": "img/SolutionInnerbananer.jpg",
"html": "<h2 class=\"fg-white\">AboutUs</h2><p class=\"fg-white\">developing and supporting complex IT solutions.Touching millions of lives world wide by bringing in innovative technology</p>"
}
]
}