Javascript 将字符串解析为Json-Json.Parse
存储在DB中的字符串(Json格式): (Razor)从模型中获取字符串: ==>不工作(我试图解析的字符串的格式为双引号) ==>obj.requiredParam返回未定义的参数Javascript 将字符串解析为Json-Json.Parse,javascript,asp.net,json,parsing,razor,Javascript,Asp.net,Json,Parsing,Razor,存储在DB中的字符串(Json格式): (Razor)从模型中获取字符串: ==>不工作(我试图解析的字符串的格式为双引号) ==>obj.requiredParam返回未定义的参数 JSON.Parse('{"required.Param":"value"}') ==>有效 主要目的是使用obj.requiredParam 有什么建议吗?试试这个: JSON.Parse('{"'+required.Param+'":"'+value+'"}') 编辑:我没有正确理解这个问题。。抱歉 你怎么
JSON.Parse('{"required.Param":"value"}')
==>有效
主要目的是使用obj.requiredParam
有什么建议吗?试试这个:
JSON.Parse('{"'+required.Param+'":"'+value+'"}')
编辑:我没有正确理解这个问题。。抱歉
你怎么能逃脱“使用正则表达式”
var str = document.getElementById("link-test").innerHTML;
str = str.replace(/"/g, '\\"');
var obj = JSON.Parse(str);
var requiredParam = obj.requiredParam;
解决方案是使用JObject.Parse和GetValue,如下所示:
<a id="demo" asp-controller="Demo" asp-action="Demo">@Newtonsoft.Json.Linq.JObject.Parse(model.RequiredParam).GetValue("requiredParam")</a>
@Newtonsoft.Json.Linq.JObject.Parse(model.RequiredParam.GetValue(“RequiredParam”)
我假设您的html如下所示
<div id="link-test">{"requiredParam":"value"}</div>
FiddlerequiredParam返回“Undefined”,因为解析不起作用,这正是问题所在。编辑了答案。请检查如何在C#中设置
param
?原始HTML是什么样子?
JSON.Parse('{"'+required.Param+'":"'+value+'"}')
var str = document.getElementById("link-test").innerHTML;
str = str.replace(/"/g, '\\"');
var obj = JSON.Parse(str);
var requiredParam = obj.requiredParam;
<a id="demo" asp-controller="Demo" asp-action="Demo">@Newtonsoft.Json.Linq.JObject.Parse(model.RequiredParam).GetValue("requiredParam")</a>
<div id="link-test">{"requiredParam":"value"}</div>
var elem = document.getElementById("link-test").innerHTML;
var obj = JSON.parse(elem.replace(/"/g, '\"'));
console.log(obj.requiredParam);