【问题标题】:Razor and Jquery for-loopRazor 和 Jquery for 循环
【发布时间】:2016-10-05 07:51:24
【问题描述】:

我对 Razor 和 Jquery 的组合有疑问:

if (@min >= @customProperty.Count){    
    @for (int i = 0; i < min - customProperty.Count; i++)
        @:$('.customClass tr:last').after('<tr><td>&nbsp;</td></tr>');
}

我收到语法错误,正确的语法应该是什么?

【问题讨论】:

  • 用你的语法试试@@
  • @Bharat Patidar,抱歉,我遇到了更多语法错误

标签: c# jquery asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:

“块语句必须用“{”和“}”括起来”

@for 开始一个剃刀块语句,所以你需要:

if (@min >= @customProperty.Count){    
    @for (int i = 0; i < min - customProperty.Count; i++) 
    {
        @:$('.customClass tr:last').after('<tr><td>&nbsp;</td></tr>');
    }
}

由于 js if 使用服务器端变量运行(即一旦渲染就不会更改),您可以将其设为服务器端 @if,给出:

@if (min >= customProperty.Count)
{    
    for (int i = 0; i < min - customProperty.Count; i++)
    {
        @:$('.customClass tr:last').after('<tr><td>&nbsp;</td></tr>');
    }
}

【讨论】:

  • 使用 @:$('.ccuListView tr:last').after('&lt;tr&gt;&lt;tr&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;&lt;/tr&gt;'); 将导致 SyntaxError: expected expression, got '&''(在我的控制台内部,FireFOx)。在这里做什么?
  • 你把它放在你的浏览器控制台吗?它是服务器端代码,而不是客户端。删除客户端的“@:”。
猜你喜欢
  • 1970-01-01
  • 2022-06-13
  • 1970-01-01
  • 2012-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多