Asp.Net MVC3 RC剃刀的观点:语法内嵌入<的javascript>块码
-
25-09-2019 - |
题
经与的 MVC3 RC1 强>剃刀视图一个JavaScript块内嵌入麻烦C#代码。我应该使用什么语法,使这方面的工作?我得到的警告如。其他中ISOK变量的预期不变。 (无文本标签,下面的代码不被识别为的JavaScript)
@{bool isOk = true;}
<script type="text/javascript">
var tmp1 = "";
@if (isOk)
{
<text>
var tmp=""; // this should be interpreted as javascript
</text>
}
</script>
解决方案
您需要<text>
标签,以表明该内容没有在服务器上进行评估。例如:
@{
var isOK = true;
}
<script type="text/javascript">
var tmp1 = "";
@if (isOK)
{
<text>
var tmp = "foo";
</text>
}
</script>
在所得的页面将输出:
<script type="text/javascript">
var tmp1 = "";
var tmp = "foo";
</script>
至于Expected Constant
警告而言,良好,剃须刀智能感知仍处于测试阶段,因此是远远不够完善。这只是你可以放心地忽略警告。最重要的是什么应用程序工作并发出有效的HTML。希望这是一些将被固定在最终产品中。从个人的经验,我相信只是警告是由C#编译器发出的一个。当我在一个视图我的工作我忽略所有蹩脚的警告,Visual Studio中发出,因为我知道这是错误的。
其他提示
另一种(更简洁和容易阅读IMO)是逃回出到文本如下:
<script type="text/javascript">
var tmp1 = "";
@if (isOK)
{
@:var tmp = "foo";
}
</script>
不隶属于 StackOverflow