【发布时间】:2017-06-05 01:57:27
【问题描述】:
您好,我正在使用 jquery 在 mvc5 中开发一个应用程序。我正在尝试为密码实现正则表达式,如下所示。 这是 jquery.validationEngine-en.js 中的一段代码
"requiredOutLogin": {
"regex":/^(?=.*[A-Z].*[A-Z])(?=.*[!@#$&*])(?=.*[0-9].*[0-9])(?=.*[a-z].*[a-z].*[a-z]).{8}$/,
"alertText": "*Password should contain atleast one special character,one number and one upper case letter",
"alertTextCheckboxMultiple": "* Please select an option",
"alertTextCheckboxe": "* This checkbox is required",
"alertTextDateRange": "* Both date range fields are required"
},
这是我的剃刀视图代码。
@Html.TextBoxFor(model => model.usr_username, new { id = "txtusername", @maxlength = "15",@minlength="8",@class = "form-control validate[requiredOutLogin] text-input", @placeholder = "Username" })
我无法在此处验证密码。如果我将密码字段留空,那么它将弹出所需的消息(*密码应至少包含一个特殊字符、一个数字和一个大写字母),但如果我输入只是测试,那么它将登录(如果密码正确)。上面的正则表达式不是验证,但如果我将该字段保留为空白,它将显示 alertText。我从Regex to validate password strength 复制了正则表达式。我可以知道为什么我无法在这里验证吗?任何帮助,将不胜感激。谢谢。
【问题讨论】:
-
您是否有理由不在您的财产和 jquery 验证上使用
[RegularExpression]? -
谢谢。我没有进行任何服务器端验证。
-
为什么不呢?您必须始终在服务器上进行验证(任何人都可以绕过您的脚本)
-
我同意。出于安全目的,我可以在服务器端对其进行验证。但在这里我也试图验证。
-
如下更改后开始正常工作。 @class= “表单控件验证 [custom[requiredOutLogin]] 文本输入”。感谢您尝试帮助我斯蒂芬·穆克先生。祝你有美好的一天。
标签: jquery validation asp.net-mvc-5