我在表单中有以下字段:
<input id="edit-submitted-tel" name="submitted[tel]" value="telefoonnummer (optioneel)" size="4" maxlength="15" class="form-text" type="text">
我正在使用jQuery Validate来检查表单,它一切正常,但我似乎无法将我的错误消息设置为每个字段自定义。由于字段名称,下面给出了一个错误,我不知道它应该是什么:
$("#form").validate({
messages: {
submitted[tel] : "tel error custom msg"
}
});
当它是一个数组时应该是什么?
答案 0 :(得分:5)
使用两个引号
$("#form").validate({
messages: {
"submitted[tel]" : "tel error custom msg"
}
});
答案 1 :(得分:3)
我认为这只是quoting你的名字的问题。
来自文档:
如果您的表单包含使用非合法JavaScript标识符的字段的字段,那么您在使用规则选项时必须引用这些名称:
$("#myform").validate({
rules: {
// no quoting necessary
name: "required",
// quoting necessary!
"user[email]": "email",
// dots need quoting, too!
"user.address.street": "required"
}
});
所以在你的情况下,它应该只是一个问题:
$("#form").validate({
messages: {
"submitted[tel]" : "tel error custom msg"
}
});
答案 2 :(得分:0)
Resolvi assim
var $params = {debug:false, messages:{}};
var $c_nome = $("#c_nome").attr("name");
$params['messages'][$c_nome] = "O campo de nome é obrigatório";
var $c_email = $("#c_email").attr("name");
$params['messages'][$c_email] = "Por favor insira um e-mail válido";
var $c_assunto = $("#c_assunto").attr("name");
$params['messages'][$c_assunto] = "O campo de assunto é obrigatório";
var $c_msg = $("#c_msg").attr("name");
$params['messages'][$c_msg] = "O campo de mensagem é obrigatório";
$("#form-contato").validate($params);