我在一个剃刀页面中有一个表单,我使用jquery实现客户端验证,jquery不引人注目,jquery验证和数据注解一起验证模型。
使用强类型文本框,我获得了使用ValidationMessage()方法显示错误所需的data-val属性。
然而,当我使用松散类型的文本框的数据值属性没有得到生成,这是为什么?
它对Html.Textbox()起作用是很重要的,因为它使用了一个更复杂的数据结构,并且需要为列表中的每个元素定义特定的名称。
松散键入的文本框和验证消息:
生成的html:
强类型文本框和验证消息:
生成的html:
我们可以清楚地看到data-val属性
name字段是这样构建的(其中key是列表中每个项目的唯一guid):
为什么data-val属性不出现在松散键入的文本框中?
1条答案
按热度按时间afdcj2ne1#
我想我知道答案了,因为它是强类型的,所以我们有关于模型中dataannotation的信息,而loosley类型只是从一个名字生成html。