WebUIValidation.js尝试以不正确的方式访问属性?失败

时间:2013-12-18 14:44:52

标签: javascript validation

WebUIValidation.js是许多.NET解决方案中使用的非常标准的表单验证脚本。

Spans用作验证器,它们看起来像这样

<span id="myDateControl" data-val-evaluationfunction="RangeValidatorEvaluateIsValid" data-val="true" data-val-errormessage="invalid date" data-val-controltovalidate="myDateControl" type="Date" minimumvalue="1990-01-01" maximumvalue="2013-12-18" style="visibility:hidden;"><span class="Validate Error"></span></span>

脚本的作用是选择这些span元素并尝试使用点表示法访问对象的属性。

问题是验证代码无法访问minimumvalue和maximumvalue属性。 (我刚刚将这些属性添加到我的范围内。之前我只是进行了其他类型的验证,一切正常) 查看代码,'function RangeValidatorEvaluateIsValid(val)'尝试访问未定义的'val.minimunvalue'。在这种情况下,'val'对象只是一个span元素,并且使用点表示法无法访问属性'minimumvalue',只能使用'getAttribute(“minimumvalue”)'。与maximumvalue相同的事情

奇怪的是其他属性,例如'controltovalidate'和'errormessage'可以使用点表示法访问。 所以我想知道是否有一些属性动态添加到'val'对象,但是我已经搜索了我项目中的所有代码而没有找到类似的东西......

需要一些帮助。 WebUIValidation.js中的代码是否不正确? 或者在'val'对象上添加了某些我没注意到的属性?

1 个答案:

答案 0 :(得分:0)

data-val-前缀添加到属性名称:

... data-val-minimumvalue=... data-val-maximumvalue=...