问题标签 [editorfor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3804 浏览

c# - ForEach 与 EditorFor

我有一个实体模型,其中包含一组 Message 对象,这些对象是 Message 类型,具有多个属性,包括 content、MessageID、from 和 to。

我为 Message 类型创建了一个 EditorTemplate,但是,我无法让它显示 Messages 集合的内容。

没有错误,但没有任何输出。

请注意,视图代码来自父 Talkback 类的 EditorTemplate。您可以让一个 EditorTemplate 为子集合调用另一个 EditorTemplate 吗?

Talkback 和 Message 类都是由 Entity 框架从现有数据库生成的。

查看代码:

这是我的模板代码。它是标准的自动生成的视图代码,有一些小的改动。

Message 集合中肯定有内容,因为如果我删除 EditorFor 并将 response.write 放在 Message 类的 content 属性中,我会在页面上获得 3 个 Message 对象的内容字段,这与预期的完全一样。

0 投票
2 回答
4570 浏览

asp.net - 如何将自定义视图模型的列表绑定到 dropDownList 并在 ASP.NET MVC 中 POST 后获取所选值?

我有以下问题。在我的视图模型中,我定义了一些列表属性,如下所示:

此视图模型嵌入在另一个视图模型中:

我使用 2 种操作方法;一个用于 GET,另一个用于 POST:

在视图中,我使用 EditorFor-Html Helper 实现了整个视图模型,它不想自动显示 List 属性的 DropDownLists! 1.问:如何让EditorFor显示DropDownLists?

由于我不知道如何使用 EditorFor 显示 DropDownLists,因此我使用了 DropDownList Html 帮助器并通过视图模型填充它,如下所示:

我的 2. 问题:如您所见,我将视图模型传递给具有 POST 属性的操作方法!有没有办法让 DropDownList 的选定值绑定到传递的视图模型?目前所有 DropDownList 都是空的,并且只能通过 Request.Form 获取所选值,我绝对想避免!

我将不胜感激有关此的一些想法或提示!

0 投票
2 回答
5939 浏览

html - 如何使用 EditorFor 禁用输入字段的自动完成功能?

我需要生成的输出设置 autocomplete="off" 属性。

我错过了什么?

编辑:我正在寻找 EditorFor 的扩展方法,它接受属性的键/值字典,所以我可以这样称呼它:<%= Html.EditorFor(product => product.Name, new { autocomplete = "off" } ) %>

这里是为LabelFor做的,但是需要针对EditorFor进行调整

Edit2:我意识到它不能被命名为 EditorFor,因为已经存在一个接受匿名类型的重写 EditorFor,请参见此处http://msdn.microsoft.com/en-us/library/ff406462.aspx .. 无论如何,我们可以换个名字,没什么大不了的。

0 投票
1 回答
303 浏览

asp.net-mvc-2 - MVC 2 模板 - 是否可以根据元数据将当前编辑器模板重定向到其显示模板?

对于我正在工作的项目,我被要求根据模型提供的元数据将编辑器模板重定向到其显示模板。

现在,我正在寻找一种在它到达编辑器模板之前执行此操作的方法,但这似乎会导致比其价值更多的问题,至少与系统的架构方式有关。

最简单的例子是字符串编辑器,它是一个简单的文本框,但如果设置了 IsReadOnly,我们希望它只显示为文本,而不是禁用的文本框。

到目前为止,我能找到的唯一真正的解决方案是将显示模板复制到编辑器模板中。有没有人知道如何在不复制更多代码的情况下做一些可以工作的事情?

0 投票
1 回答
1063 浏览

asp.net-mvc-2 - 在视图模型中为子集合定义 EditorTemplate

我有一个模型,其中包含我想使用 EditorFor 的 QuestionEditModel 列表。

通常,我只会在集合上调用 EditorFor,然后 MVC 会完成剩下的工作。但是,我需要单独的 QuestionEditModel 使用不同的 EditorTemplates,具体取决于对象中字段的值。

我会认为这样做的方法是这样的

但我不知道如何告诉它查看当前选择的问题并使用问题中的 EntryType 字段来确定要使用的 EditorTemplate。

所以我尝试了这个

但这不会在页面上呈现任何内容。奇怪的是,如果我设置断点并运行代码,这确实会调用正确的 EditorTemplate,传入正确的模型数据并且没有异常,但它不会渲染任何内容。

在这种情况下,我需要做一些额外的工作来让渲染的 EditorTemplate 回到我的页面吗?

编辑:

编辑视图的完整代码。

编辑2:

根据要求完成视图、控制器和模板代码。

编辑器模板:

编辑(GET)操作:

编辑(POST)操作:

0 投票
2 回答
430 浏览

asp.net - asp mvc 2 Editor对于奇怪的行为

好的,我已经为字符串定义了一个共享编辑器,如下所示

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%= Html.LabelFor(model => model) %>
<%= Html.TextBoxFor(model => model) %>
<%= Html.ValidationMessageFor(model => model) %>

现在我在另一个控件中像这样调用自定义编辑器

我的模型是这样的

呈现的唯一显示是电子邮件字段。另外两个没有渲染?如果我删除 DataType.Text 和 DataType.Password 那么所有的显示字段都被渲染了??

很奇怪的行为...

有人知道为什么吗?

0 投票
2 回答
720 浏览

asp.net-mvc - 具有可变长度列表的 EditorFor - 删除项目后显示错误数据

我正在尝试创建一个表单,客户将使用该表单来订购可变数量的模型。它类似于Steve Sanderson 博客中的示例,但我没有使用任何 javascript - 我的表单中有多个提交。

一切正常,我可以添加任意数量的项目,但是当我删除一个项目时,列表中的最后一个总是会被删除。这是一些代码:

片段来自Create.aspx

ModelCreateModel.ascx来自EditorTemplate的有趣片段:

在我的OrderCreateModel我有一个Input类型的属性,OrderCreateModel.InputModel所以Model.Input.Models只是一个ModelCreateModels的列表

现在如果我:

  1. 使用此表格添加 3 个模型(名称为AAABBBCCC

  2. 单击delete#0提交以删除模型AAA

结果,我将获得模型AAABBB的编辑器,但显示模型BBBCCC。这对我来说太疯狂了!我已经用 fiddler 进行了检查,这确实是响应的样子——这不是我的浏览器的错。此外,在调试完我的代码后,我 100% 确定在将BBB模型Input.Models传递给View().

有什么建议可以解决这个问题吗?

注意:我不想为此使用 javascript。稍后将添加它以提供更好的用户体验,但网站必须在禁用 javascript 的情况下也能正常工作。

编辑:

控制器代码:

MutlipleSubmitsAttribute继承自ActionNameSelectorAttribute这里它deleteModelNr从提交名称中提取并将其放入ViewData.

FillCreateModelWithMaps只是填充viewModel.ExistingMaps数据。

0 投票
14 回答
247614 浏览

html - ASP.NET MVC 中 EditorFor() 的 Html 属性

为什么我不能将 html 属性传递给EditorFor()? 例如;

我不想使用元数据

更新:解决方案是从视图中调用它:

ViewData["Modifiable"]在我的自定义 EditorTemplates/String.ascx 中使用,其中我有一些视图逻辑,用于确定是否向输入添加只读和/或禁用属性传入的匿名对象EditorFor()是一个调用的参数additionalViewData,其属性被传递给编辑器模板ViewData收藏。

0 投票
1 回答
778 浏览

.net - 用于 EditorFor 和 DisplayFor 的 ASP NET mvc 2 模板

我想控制或自定义 DisplayFor 和 EditorFor 生成的输出,因此它不会呈现默认的 html css 标签,例如:......

我希望这适用于所有视图,而不仅仅是类型或系统类型?什么是最简单的解决方案?

任何帮助,将不胜感激。

0 投票
2 回答
1720 浏览

asp.net-mvc - MVC EditorFor inside Another EditorFor

I have an EditorFor Template for a Model Role as below. I also have EditorFor for Date which works fine when I use EditorFor directly from View but when I have EditoFor inside an editor for it doesn't work. Any idea?