Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用json解码html_Javascript_C#_Html_Json_Angularjs - Fatal编程技术网

Javascript 用json解码html

Javascript 用json解码html,javascript,c#,html,json,angularjs,Javascript,C#,Html,Json,Angularjs,我有json格式的html,它已经(由c#)编码为: 但是我如何解码JavaScript/AngularJS中的GlossaryDescription,使其显示html标记,如&等?一如既往地感谢:)您不需要做任何事情。字符串“\u003cp\u003e”(例如)实际上不是以需要解码的方式编码的,它完全等同于“”。如果在控制台中键入“\u003cp\u003e”==”“,您将看到它返回true。由于“编码”字符串与非“编码”字符串完全相同,因此可以使用完全相同的方法。看一看: var obj=

我有json格式的html,它已经(由c#)编码为:


但是我如何解码JavaScript/AngularJS中的GlossaryDescription,使其显示html标记,如
&
等?一如既往地感谢:)

您不需要做任何事情。字符串
“\u003cp\u003e”
(例如)实际上不是以需要解码的方式编码的,它完全等同于
“”
。如果在控制台中键入
“\u003cp\u003e”==”“
,您将看到它返回
true
。由于“编码”字符串与非“编码”字符串完全相同,因此可以使用完全相同的方法。看一看:

var obj={“itemID”:6,“GlossaryWord”:“ante”,“GlossaryDescription”:"\U0033\u003c\u003c\u003c\u003c\u003c\u003e\u003c\u003e\u003e\u003e\u003e\u003c\u003c\u003c\u003c\U0033\\r\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\r\n\t\t\u003cb\u003esomething\u003c/b\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\r\n,“类别ID”:6};
文档。编写(obj.词汇描述);
尝试:

var htmlToUse=“指出,您不需要更改字段的内容。您只需使用JavaScript(和jQuery)将现有HTML替换为生成的新HTML。如果您不想使用JavaScript,那么可以使用jQuery


注意:如果将
GlossaryDescription
字段应用于元素属性(如
title
),则该字段中不应包含HTML。此外,上面的代码的作用就像数据是数组一样,但您的示例并非如此。因此,将删除
[i]

您无需执行任何特殊操作:。该字符串包含HTML,您可以随意使用它(JSON解析器已经“解码”了转义序列)。您使用什么代码从JSON获取HTML并将其添加到页面?AngularJS,im在JSON中循环并创建:好的,事情是im在另一个JavaScript插件(tooltipster)上使用此数据它以文本形式输出整个内容-不像上面那样,但是你可以看到PargarPah标签和UL等。所以我想我需要在将其提供给插件之前对其进行转换?谢谢,这听起来像是tooltipster转义HTML标记的问题。浏览tooltipster文档,看起来
contentAsHTML
选项是相关的:“如果工具提示的内容是以字符串形式提供的,则默认情况下显示为纯文本。如果此内容实际上应解释为HTML,请将此选项设置为true。”Yep,已在中包含contentAsHTML,它适用于普通的硬编码html,但不喜欢这个json版本。我实际上是在angularJS中构建工具提示输出,所以我想知道是否有什么东西可以围绕这个描述标记将其更改为普通的“技巧”工具提示器-感谢帮助:)有什么东西正在转义HTML,而它与JSON无关(通过运行我的代码段可以看到)。也许他是在逃避。如果看不到您的实际代码,就不可能说.hmm,我将以角度遍历json并用新的ie:var replace=”“+data[i]替换前端html;所以一定是有什么东西在逃避它,因为编码的html自然就可以了?谢谢,我试过了decodeURI,但还是一样的。也不能使用jquery中的.html,而且内容还没有进入DOM。只是想知道是否有一个标准的函数来将代码转换成普通的我错过了阅读你的代码。它不是以需要解码的方式编码的。我已经更新了我的答案。谢谢,你的权利-是其他东西,但我不需要解码:)@Cerls如果我们已经回答了你的问题,请接受其中一个答案。
{"itemID":6,"GlossaryWord":"ante","GlossaryDescription":"\u003cp\u003e\r\n\t\u003cstrong\u003eUp the ante\u0026nbsp;\u003c/strong\u003e\u003c/p\u003e\r\n\u003cul\u003e\r\n\t\u003cli\u003e\r\n\t\t\u003cstrong\u003eHere\u003c/strong\u003e\u003c/li\u003e\r\n\t\u003cli\u003e\r\n\t\t\u003cstrong\u003eis\u0026nbsp;\u003c/strong\u003e\u003c/li\u003e\r\n\t\u003cli\u003e\r\n\t\t\u003cb\u003esomething\u003c/b\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\r\n","CategoryID":6}
var htmlToUse = "<a class=\"gobig tooltip\" "
    + "title=\""
    + data[i].GlossaryDescription
    + "\">"
    + data[i].GlossaryWord.trim().toLowerCase()
    + ",</a>";
$('#HtmlParentContainer').html(htmlToUse);