我对如何混合使用razor和js感到非常困惑。这是我坚持使用的当前函数:
<script type="text/javascript">
var data = [];
@foreach (var r in Model.rows)
{
data.push([ @r.UnixTime * 1000, @r.Value ]);
}
如果我可以用<c#></c#>
声明c#代码,其他一切都是JS代码--这就是我想要的:
<script type="text/javascript">
var data = [];
<c#>@foreach (var r in Model.rows) {</c#>
data.push([ <c#>@r.UnixTime</c#> * 1000, <c#>@r.Value</c#> ]);
<c#>}</c#>
实现这一目标的最佳方法是什么?
发布于 2011-04-11 05:54:20
使用<text>
<script type="text/javascript">
var data = [];
@foreach (var r in Model.rows)
{
<text>
data.push([ @r.UnixTime * 1000, @r.Value ]);
</text>
}
</script>
发布于 2011-04-11 05:54:04
在代码块(例如,@foreach
)中,您需要标记标记(或者,在本例中是Javascript) with @:
or the tag。
在标记上下文中,您需要用代码块(@{ ... }
或@if
,...)包围代码。
发布于 2016-04-29 21:49:48
永远不要混用更多的语言。
<script type="text/javascript">
var data = @Json.Encode(Model); // !!!! export data !!!!
for(var prop in data){
console.log( prop + " "+ data[prop]);
}
如果有问题,你也可以尝试
@Html.Raw(Json.Encode(Model));
https://stackoverflow.com/questions/5614941
复制相似问题