2013-03-27 2 views
1

Я использую приведенный ниже код для проверки групповой группы и показывает Это поле является обязательным. как сообщение об ошибке. Как изменить приведенный ниже код для настройки сообщения. Заранее спасибо.Пользовательское сообщение об ошибке для проверки jQuery в группе переключателей

$(document).ready(function() {  

    $('input[name="batches.batch"]').rules("add", "required");//works fine 
    $('input[name="batches.batch"]').messages("error message1", "error message2");// no effect 

}); 

Мой HTML:

<input name="batches.batch" type="radio" value="" />First <br /> 
    <input name="batches.batch" type="radio" value="" />Second<br /> 
    <input name="batches.batch" type="radio" value="" />Third<br /> 
    <input name="batches.batch" type="radio" value="" />Fourth<br /> 

Библиотеки Я использую:

<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script> 
<script type="text/javascript" src="js/jquery-ui-1.10.1.custom.min.js"></script> 
<script type="text/javascript" src="js/custom/jquery.validate.min.js"></script> 
+0

Что вы используете, JQuery-Validate или JQuery-валидация двигатель? Ваш код выглядит как jquery-validate. – Barmar

+0

@Barmar Я использую jquery-validate. – Visruth

+0

Это не работает, потому что этот плагин не содержит такого метода, который называется '.messages()'. – Sparky

ответ

3

Ваш код ...

$('input[name="batches.batch"]').rules("add", "required");//works fine 
$('input[name="batches.batch"]').messages("error message1", "error message2");// no effect 

Это s не работает, потому что есть no documented method под названием .messages(). Разработчики модулей должны быть созданы для того, чтобы они были доступны.

Вместо messages идет внутри вашего rules('add') метода, как это ...

$('document').ready(function() { 

    $('#myform').validate(); 

    $('input[name="batches.batch"]').rules("add", { 
     required: true, 
     messages: { 
      required: "my custom required message" 
     } 
    }); 

}); 

Работа DEMO: http://jsfiddle.net/rDcDW/

выше работает отлично подходит для динамически добавлять правила, однако, если вам просто нужно workaround the name's with dots issue, просто объявляйте правила как обычно, но используйте котировки вокруг name ...

$(document).ready(function() { 

    $('#myform').validate({ // initialize the plugin 
     rules: { 
      'batches.batch': { 
       required: true 
      } 
     }, 
     messages: { 
      'batches.batch': { 
       required: "my custom required message" 
      } 
     } 
    }); 

}); 

Работа DEMO: http://jsfiddle.net/YZs3Y/

+0

Демонстрация в [http://jsfiddle.net/YZs3Y/] (http://jsfiddle.net/YZs3Y/) работает нормально. но опубликованный ответ не работает. Большое вам спасибо за демо-код. – Visruth

+0

@ VisruthCV, я опубликовал два совершенно разных метода, и оба они отлично работают, как показано каждым jsFiddle. Можете ли вы подробнее рассказать о том, о чем говорите? – Sparky

1
$("#formid").validate({ 
    rules: { 
     batch: "required" 
    }, 
    messages: { 
     batch: { required: "Customized error message" } 
    } 
}); 
+0

Это не работает. Я обновил свой вопрос, вы можете снова взглянуть на него, пожалуйста !!!! – Visruth

Смежные вопросы