循环不在头部mvc工作

时间:2012-06-21 14:23:48

标签: asp.net-mvc loops razor

我正在使用带有.Net 4.0的visual studio 11,mvc razor 2.0

这是我的代码:

@section head{
<script>


    function functionTest(obj, no)
    {
        var i = 0;
        while( i < 5)
        {
            console.log('test');
            i++;
        }


    }


</script>

}

我收到了这个错误:Expected "}"

当我移除循环并将其直接放在我的_Layout.cshtml中时,它似乎是导致问题的循环。

有人可以告诉我为什么它在我的部分不起作用?

3 个答案:

答案 0 :(得分:1)

这是a known issue of the Razor 2.0 parser:它在<内的@section上感到困惑。您可以通过将代码更改为:

来验证它
while( 5 > i)
{
   console.log('test');
   i++;
}

问题状态是固定的,所以希望它能在MVC4的最终版本发布时发挥作用。

答案 1 :(得分:0)

这是一个无限循环

while( i < 5)
    {
        console.log('test');
    }

在浏览器控制台中试用它,你会检查它

答案 2 :(得分:0)

尝试使用<text>标记。否则,javascript被解释为剃刀代码。

@section head{
    <text>
        <script>
            function functionTest(obj, no)
            {
                var i = 0;
                while( i < 5)
                {
                    console.log('test');
                    i++;
                }
            }
        </script>
    </text>
}