C# 替换出的JavaScript中的MVC4 Razor标记
我有一个使用交换出的JavaScript的视图C# 替换出的JavaScript中的MVC4 Razor标记,c#,javascript,asp.net-mvc,C#,Javascript,Asp.net Mvc,我有一个使用交换出的JavaScript的视图 @section JavaScript { <script type="text/javascript" src="@Url.Content("/Scripts/Index.js")" /> } 部分“@(Html.someHtmlFunction())”被解释为字符串本身,我的someVariable看起来像“@(Html.someHtmlFunction())”而不是“someReturnValue” 是否可以从交换的Ja
@section JavaScript {
<script type="text/javascript" src="@Url.Content("/Scripts/Index.js")" />
}
部分“@(Html.someHtmlFunction())”被解释为字符串本身,我的someVariable看起来像“@(Html.someHtmlFunction())”而不是“someReturnValue”
是否可以从交换的JavaScript文件中调用Razor命令,或者我必须在视图中包含JavaScript?不,您不能在.js文件中执行此操作。在这些场景中,我通常会在页面上设置JavaScript变量,并在.js文件中引用它。即,使用
全局变量:
在.cshtml中:
var someVariable = '@(Html.someHtmlFunction())' // make sure this is before .js
@section JavaScript {
<script type="text/javascript" src="@Url.Content("/Scripts/Index.js")" />
}
var someVariable = '@(Html.someHtmlFunction())'
var someVariable = '@(Html.someHtmlFunction())' // make sure this is before .js
@section JavaScript {
<script type="text/javascript" src="@Url.Content("/Scripts/Index.js")" />
}
console.log(someVariable);