混合Razor和Javascript代码

我对如何混合剃须刀和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#>

实现这一目标的最佳方法是什么?


料青山看我应如是
浏览 774回答 3
3回答

jeck猫

使用<text>:<script&nbsp;type="text/javascript"> &nbsp;&nbsp;&nbsp;var&nbsp;data&nbsp;=&nbsp;[]; &nbsp;&nbsp;&nbsp;@foreach&nbsp;(var&nbsp;r&nbsp;in&nbsp;Model.rows) &nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<text> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data.push([&nbsp;@r.UnixTime&nbsp;*&nbsp;1000,&nbsp;@r.Value&nbsp;]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</text> &nbsp;&nbsp;&nbsp;}</script>

交互式爱情

在代码块内(如,@foreach),您需要标记(或者,在本例中,标记为Javascript)。带着@:或者<text>标签.在标记上下文中,需要用代码块包围代码(@{ ... }或@if, ...)

ibeautiful

您也可以简单地使用<script&nbsp;type="text/javascript"> &nbsp;&nbsp;&nbsp;var&nbsp;data&nbsp;=&nbsp;[]; &nbsp;&nbsp;&nbsp;@foreach&nbsp;(var&nbsp;r&nbsp;in&nbsp;Model.rows) &nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;@:data.push([&nbsp;@r.UnixTime&nbsp;*&nbsp;1000,&nbsp;@r.Value&nbsp;]); &nbsp;&nbsp;&nbsp;}</script>
打开App,查看更多内容
随时随地看视频慕课网APP