【问题标题】:Is there a way to nest (or escape) ASP.NET inline code inside HTML angle brackets?有没有办法在 HTML 尖括号内嵌套(或转义)ASP.NET 内联代码?
【发布时间】:2009-07-07 15:03:35
【问题描述】:

是否可以在 ASP.NET 中执行以下操作:

<tr<%= index++ % 2 == 0 ? " class=\"alt-row\"" : ""; %>>

换句话说,有没有办法为内联代码块或其他东西转义尖括号?

(我知道替代方案是:

<% if (index++ % 2 == 0) { %>
    <tr class="alt-row">
<% } else { %>
    <tr>
<% } %>

。我只是好奇是否可以采用其他方式)

【问题讨论】:

  • 我不确定我是否理解您的要求,您的第一行代码看起来不错。
  • 使用替代方案 - 它更容易阅读!

标签: asp.net html asp.net-mvc syntax inline-code


【解决方案1】:

是的,您可以这样做(至少在 MVC 中),尽管您的示例有几个错误。

这是一个固定版本:

<tr<%= index++ % 2 == 0 ? " class=\"alt-row\"" : "" %>>

【讨论】:

  • 好的,这行得通。我试图避免那些没有课程的人的空间。
  • 第二个错误,顺便说一句,是末尾多余的分号,不能与%=一起使用
  • 分号实际上修复了一切!你现在拥有的就是我拥有的,除了带分号。我只是把我的原件放回去,去掉分号,它起作用了!谢谢!
【解决方案2】:

你试过了吗?类似的测试对我来说效果很好。

【讨论】:

  • 是的,我有,但对我没有用。你正是我所做的??
  • 会不会只是 tr 和
【解决方案3】:

我在标签中使用了 构造来分配属性,所以我想这会起作用。没用吗?

【讨论】:

    【解决方案4】:

    试试这个。

     <tr class="<%= index++ % 2 == 0 ? "alt-row" : "" %>">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-09
      • 2015-05-29
      • 2012-09-09
      • 1970-01-01
      • 2012-12-21
      • 2014-05-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多