【问题标题】:How to concatenate the id of the HTML element using Razor ASp.NET MVC如何使用 Razor ASp.NET MVC 连接 HTML 元素的 id
【发布时间】:2011-06-13 04:33:58
【问题描述】:

我有一个带有复选框的网格列,我想给它们一个不同的 ID。 Id 基于模型中的 CustomerId。我应该使用什么语法来连接 chk_@item.CustomerId。

// using the telerik grid 
id="chk_@item.OrderNumber"  // does not work 

// 这会将@item.Customernumber 的值作为复选框id

columns.Template(@<text><input type='checkbox' id="@item.Customernumber" name="@item.CustomerNumber" value="@item.OrderNumber" /></text>).Width(50)

第二个选项:

columns.Template(@<text><input type='checkbox' id="chk_@item.Customernumber" name="@item.CustomerNumber" value="@item.OrderNumber" /></text>).Width(50)

以上将呈现为

<input type="checkbox" id="chk_@item.Customernumber" value=... /> 

【问题讨论】:

  • 您如何得出“不起作用”的结论,发生了什么。从您发布的代码中,我看不出这是来自您的视图还是控制器。再发布一点(包装 {} 或 会很好地获取上下文)。
  • @johndoe,答案解决了问题。你能把它标记为答案吗?

标签: asp.net-mvc telerik asp.net-mvc-3 razor


【解决方案1】:

chk_@item.OrderNumber 将不起作用,因为 razor 将其视为电子邮件,您需要这样做:chk_@(item.OrderNumber)

【讨论】:

  • 它在数据中也附加了 '('
  • Here 是另一个帖子,希望对某人有所帮助。
【解决方案2】:

正确的语法

id="@("chk_"+@item.Id)"

【讨论】:

    【解决方案3】:

    这确实适用于最新的 MVC:

    id="chk_@item.OrderNumber"
    

    编码愉快。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-12
      • 2013-12-01
      • 2020-10-02
      • 2020-10-01
      • 1970-01-01
      • 2019-09-07
      • 1970-01-01
      相关资源
      最近更新 更多