地图查看模型以淘汰赛验证
-
25-10-2019 - |
解决方案
在里面 MVC控制工具包 我实施了一个引擎,可以在quoteut.jsout.jsot.both客户端和服务器端验证上启用通常的MVC验证(数据注释或其他)。此外,敲除可以与MVC助手一起使用,一些绑定是自动推断的,等等。
其他提示
如果您使用的是淘汰赛和jQuery,我想出了以下非常简单的方法来进行基本的客户端验证。
无论您想在页面上显示错误消息的何处,都包括这样的跨度标签:
<span name="validationError" style="color:Red"
data-bind="visible: yourValidationFunction(FieldNameToValidate())">
* Required.
</span>
显然,您需要写“您的validationfunction”才能做任何您想做的事情。它只需要返回对还是错,true表示显示错误。
如果显示任何验证错误,您可以使用jQuery防止用户继续执行。您可能已经有了一个保存按钮,该按钮会触发JavaScript函数来执行一些Ajax或其他任何事情,因此只需在其顶部包含它:
if ($("[name='validationError']:visible").length > 0) {
alert('Please correct all errors before continuing.');
return;
}
这比那里的许多其他验证解决方案要简单得多,更灵活。您可以将错误消息定位在任何位置,也无需学习如何使用某些验证库,而该方法无无论服务器端技术如何工作。
我建议使用内置的MVC客户端验证,您可能需要调用它,请尝试以下操作:
$.validator.unobtrusive.parse(yourFormElement)
代码来自: https://stackoverflow.com/a/5669575/941536
不确定MVC2是否具有不引人注目的客户验证,不确定在必要时可以选择升级到MVC3。
验证插件以您扩展要验证的可观察到的方式工作。
它们是否是通过映射创建的,只需创建完成映射完成后运行的函数并添加所需的所有验证即可。
或者,如果您愿意,可以使用验证绑定。在Github上阅读README以进行敲除验证,您会看到他们如何做到。
不隶属于 StackOverflow