asp.net-mvc – ASP.NET MVC 4覆盖发出的html名称和id
发布时间:2020-12-15 19:21:24 所属栏目:asp.Net 来源:网络整理
导读:我试图更改由@ Html.HiddenFor创建的html输入的发出的名称。 我使用的代码: @Html.HiddenFor(e = e.SomeProperty,new { @id = "some_property",@name = "some_property" } 现在这适用于id,但它不工作的名称。现在我真的不关心id现在,我需要改变名称,因为
我试图更改由@ Html.HiddenFor创建的html输入的发出的名称。
我使用的代码: @Html.HiddenFor(e => e.SomeProperty,new { @id = "some_property",@name = "some_property" } 现在这适用于id,但它不工作的名称。现在我真的不关心id现在,我需要改变名称,因为这是一个发布回到目标服务器。 在那儿 >我可以在我的模型中的SomeProperty应用的属性? 或者我坚持做一个简单的< input ...>用手? 解决方法
您需要使用
Html.Hidden(或手写输出< input ...>),而不是Html.HiddenFor
@Html.Hidden("some_property",Model.SomeProperty,new { @id = "some_property" }) 强类型辅助函数(例如名称以“For”结尾的函数,如HiddenFor)的目标是从提供的表达式中猜测输入名称。所以如果你想有一个“自定义”输入名称,你可以总是使用常规帮助像Html.Hidden,你可以显式地设置名称。 接受的answer from unjuken是错误的,因为它生成无效的HTML。 使用该解决方案生成两个名称属性: <input Name="some_property" name="SomeProperty" id="some_property" type="hidden" value="test" /> 所以你将有Name =“some_property”AND name =“SomeProperty”,它是INVALID HTML,因为一个输入只能有一个名称属性! (虽然大多数浏览器碰巧采取第一个名称=“some_property”,不在乎第二个…) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 保持负载均衡器在长时间运行期间超时
- asp.net-mvc – 在Action Filter中不正确地存储实例状态
- asp.net-mvc – ASP.NET MVC和EF代码第一内存使用
- asp.net – 你能以编程方式设置MachineKey吗?
- asp.net – GridView中的多个DataKeyNames
- asp.net-mvc – 将部分视图渲染为字符串MVC4
- asp.net – IIS动态压缩失败
- asp-classic – 超过响应缓冲区限制
- ASP.NET Core 实现带认证功能的Web代理服务器
- asp.net – PostbackUrl vs NavigateUrl