我有点问题。 我正在使用MVC 4和“jQuery Validation Plugin 1.11.1”。
我在脚本部分插入自定义验证,如下所示:
jQuery.validator.addMethod("nameExist", function (value, element, param) {
var notError = true;
if (value == 'Hello')
{
notError = false;
}
return notError;
}, 'The name exists');
使用新验证创建课程
jQuery.validator.addClassRules("nameExistErrClass", { nameExist: true });
然后在html部分中执行此操作:
@using (Html.BeginForm(MVC.Home.CopyData(), FormMethod.Post, new { id = "copyForm" }))
{
...
@Html.TextBox("newName", string.Empty, new { type = "text", @class = "nameExistErrClass"})
<span class="field-validation-valid" data-valmsg-for="newName" data-valmsg-replace="true"></span>
...
}
在提交带有文本“Hello”的表单后,看起来验证工作正常,但错误消息是
警告:没有为newName定义消息
如何显示消息'名称存在'?
P.S。 如果我添加属性
required =“required”
到元素'newName',一切都很好,消息来自默认消息。
答案 0 :(得分:-1)
现在我明白了!抱歉所有的困惑。 JavaScript部分运行良好。问题是这样的重载Html.BeginForm(String, FormMethod, Object)
不存在。请告诉我你尝试做什么,以便我给你正确的建议。我甚至不理解MVC.Home.CopyData()
部分。你能告诉我更多相关信息吗?我认为你会选择错误的方法。
我希望这会对你有所帮助!