【发布时间】:2020-10-26 04:09:01
【问题描述】:
我想将我的整个 ViewModel 从 .cshtml 文件传递到包含在同一个 cshtml 文件中的外部 Javascript。
我尝试了不同的解决方案,但都没有奏效。我首先从 cshtml 文件中的 reguarl js 变量开始,并将其传递到外部 js 文件中。 例如,当我点击下面的按钮时,我得到下面的代码,Uncaught ReferenceError: myValue is not defined
**- in test.cshtml file:**
<button onclick="testAlert()"></button>
<script language="text/javascript">
var myValue = "myValue test";
</script>
<script src="~/js/test.js"></script>
**in test.js:**
/**
* This is a test alert function in external js.
* */
function testAlert() {
console.log(myValue);
}
以上只是对常规变量的测试,如果它起作用,那么我想要外部 javascript 中的以下对象,如下所示。
***in test.cshtml:***
var customer = @Html.Raw(JsonConvert.SerializeObject(Model.CustomerDetails));
***Then in test.js***
function testAlert() {
console.log(customer.Names.FirstName);
}
【问题讨论】:
-
您的代码完全正确,但不知道为什么它不起作用
-
@Vyas Senthil,有更新吗?我的回复或 Seabizkit 回复对您有帮助吗?
-
@BrandoZhang - 感谢您抽出时间帮助我,也感谢 Seabizkut。非常感谢您的帮助。但请看我的回答,了解最终的效果。如果可能的话,仍然想改进它。
-
各位大神,我如何将 c# 对象中的 cmets 获取到 json 字符串中,以便在处理外部 JS 文件时对 javascript 对象进行智能感知?
标签: javascript .net asp.net-mvc asp.net-core-mvc