有没有简单的方法将C#
- 对象转换为转义的普通字符串并且可以被javascript使用?
我尝试将字符串传递给jQuery函数,该函数将使用实数值替换此字符串的某些部分,以通过$.ajax
将它们作为请求对象传递。
无论我尝试过什么(在互联网上找到)都行不通。
目前我有:
var jsVariable = "@Html.Raw(Json.Encode(new MyClass()))"
但是这会引发Uncaught SyntaxError: Unexpected identifier
"
,因为"{"Prop1": "{0}", "Prop2":"{1}"}"
未正确转义。
更新1
最后我想要像
这样的JSON字符串javascript
我可以(在var request = string.Format(jsVariable, value1, value2);
中)致电
$.ajax({
type: "POST",
url: "someUrl",
data: $.parseJson(request),
success: function(data) {
console.log("success");
},
dataType: "JSON"
})
启用
cabal -v update
答案 0 :(得分:1)
摆脱双引号。
确保将其添加到视图的脚本标记中。
var jsVariable = @Html.Raw(Json.Encode(new MyClass()))
然后您将获得一个包含其属性的javascript对象 - 已定义MyClass
,并且可在您的CSHTML中访问。
jsVariable.myProp, jsVariable.myOtherProp
。 。等