Сообщение об ошибке изменения проверки jquery при изменении раскрывающегося списка

Я новичок в jquery, я использую плагин проверки с http://bassistance.de, пока работает нормально , до тех пор, пока на определенной странице мне не нужно будет изменить сообщение об ошибке при изменении раскрывающегося списка вместо нажатия кнопки отправки.

Вот что у меня есть в части сообщения об ошибке

Сообщения: {

   txtLocation: {

     required: function(){ 
                    if($("select[name=selDelBasis] option:selected").text()=="C&F FIFO" || $("select[name=selDelBasis] option:selected").text()=="CIF FIFO")
                        return "Please enter the name of discharge port.";
                    else
                        return "Please enter the name of port from where you will load your coal.";
            }},

В моем html у меня есть выбор с именем = selDelBasis и текст типа ввода name = "txtLocation"

Чтобы указать проблему, выполните следующие действия.
1. Выберите C&F FIFO в раскрывающемся списке selDelBasis
2. Нажмите «Отправить», не заполняя поле txtLocation
3. Появится сообщение об ошибке: «Пожалуйста, введите имя порта разгрузки. "
4. Измените selDelBasis с "C&F FIFO" на "FAS"
5. Сообщение об ошибке не изменилось, осталось то же самое "Пожалуйста, введите имя порта разгрузки".

То, что я хочу, находится на шаге 5, сообщение об ошибке должно измениться на «Пожалуйста, введите имя порта, откуда вы будете загружать уголь».

Спасибо


person dennysutanto    schedule 21.04.2011    source источник


Ответы (2)


Я не знаю, хорошо ли я понял, но я думаю, что опция set onclick сделает то, что вы хотите:

$(".selector").validate({
   onclick: false
})

Аналогично есть еще варианты onkeyup и onfocusout:

Полный список параметров: http://docs.jquery.com/Plugins/Validation/validate#toptions

person David    schedule 21.04.2011

Привет, мне удалось найти решение по этому вопросу. Я использовал один из методов проверки, который называется showErrors().

Итак, в моем раскрывающемся событии onchange я делаю это

validator.showErrors({"txtLocation": "Please enter the name of discharge port."});

в то время как валидатор var validator = $("#frmMarket").validate();

Спасибо за помощь, я надеюсь, что эта тема может помочь другим, у которых есть тот же вопрос

person dennysutanto    schedule 23.04.2011
comment
Убедитесь, что вы не забыли принять свой ответ как ответ! - person CoolBeans; 24.04.2011