gpt4 book ai didi

asp.net-mvc - 如何使用 ASP.NET MVC 3 Razor 渲染具有对象值的 HtmlAttributes?

转载 作者:行者123 更新时间:2023-12-02 06:12:47 24 4
gpt4 key购买 nike

我正在尝试使用 MVC3 Razor View 呈现以下 HTML:

<input id="EffectiveDate" name="EffectiveDate" type="date" data-options='{"mode": "flipbox"}' />

我无法获取要渲染的 data-options 属性中的引号。无论我尝试什么,它们都会呈现为 "

以下是我在自己的观点中尝试过的多种方法中的一些:

@Html.TextBoxFor(model => model.EffectiveDate, new { type = "date", data_options= " { 'mode':'flipbox' }"})

@Html.TextBoxFor(model => model.EffectiveDate, new { type = "date", data_options= @Html.Raw("{\"mode\":\"flipbox\"}")})

关于如何解码引号有什么建议吗?

最佳答案

您可以通过创建 MVC 编辑器模板来完成此操作。首先,在“Views\Shared”文件夹中创建一个名为“EditorTemplates”的文件夹。然后将名为 DateTime.cshtml 的文件放入 EditorTemplates 文件夹中。

然后,您可以简单地对 View 模型的属性使用 EditorFor() 方法,如下所示(前提是 DateTime 类型的 effectiveDate 属性):

@Html.EditorFor(m => m.EffectiveDate)

DateTime.cshtml 编辑器模板的完整代码如下所示:

@model System.DateTime
@{
var id = this.ViewData.TemplateInfo.GetFullHtmlFieldId("");
var name = this.ViewData.TemplateInfo.GetFullHtmlFieldName("");
}
<input id="@id" name="@name" type="date" data-options='{"mode": "flipbox"}' />

这将产生您正在寻找的确切输出。

关于asp.net-mvc - 如何使用 ASP.NET MVC 3 Razor 渲染具有对象值的 HtmlAttributes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8145149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com