如何使用 Razor ASp.NET MVC 连接 HTML 元素的 id

Posted

技术标签:

【中文标题】如何使用 Razor ASp.NET MVC 连接 HTML 元素的 id【英文标题】:How to concatenate the id of the HTML element using Razor ASp.NET MVC 【发布时间】: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,答案解决了问题。你能把它标记为答案吗? ***.com/questions/6671086/… 【参考方案1】:

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

【讨论】:

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

正确的语法

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

【讨论】:

【参考方案3】:

这确实适用于最新的 MVC:

id="chk_@item.OrderNumber"

编码愉快。

【讨论】:

以上是关于如何使用 Razor ASp.NET MVC 连接 HTML 元素的 id的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NEt MVC 使用 Web API 返回 Razor 视图

如何使用asp.net mvc razor在视图中访问全局资源

如何使用 jquery 或 ajax 在 c#/asp.net 中为 MVC 项目更新 razor 部分视图

ASP.NET Core 2,使用没有 MVC 的 Razor 页面单击按钮

ASP.NET MVC Razor

如何将两个模型组合成一个模型并使用 asp.net MVC razor 将其传递给查看