加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-2 – ASP.NET MVC 2多个PartialView Forms字段名冲

发布时间:2020-12-16 09:33:20 所属栏目:asp.Net 来源:网络整理
导读:我有一个ASP.NET MVC 2网页,在其中我渲染了多个相同类型的PartialViews.每个局部视图都包含一个用于发布smth的Ajax表单.表格包括: 输入:EditorFor(m = m.content) 输入验证:ValidationMessageFor(m = m.Content) 问题是因为页面上有多个这些表单,所以输入
我有一个ASP.NET MVC 2网页,在其中我渲染了多个相同类型的PartialViews.每个局部视图都包含一个用于发布smth的Ajax表单.表格包括:

>输入:EditorFor(m => m.content)
>输入验证:ValidationMessageFor(m => m.Content)

问题是因为页面上有多个这些表单,所以输入字段的名称存在冲突.这可以通过添加EditorFor()重载的’htmlFieldName’属性来解决,但它会导致另一个问题;验证不再起作用,因为输入字段的名称已更改…

有任何想法吗?

解决方法

好的,我解决了.
问题是冲突不是因为输入字段的ID,而是因为验证字段.所以现在它的工作原理如下:

<%= Html.EditorFor(m => m.Content)%>
<%= Html.ValidationMessageFor(
         m => m.Content,null,new { id = Model.ValidationMessageId,name = Model.ValidationMessageId })%>

其中ValidationMessageId是模型的只读字符串属性,它返回验证字段的唯一html id.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读