#jquery
#jquery
Вопрос:
У меня есть форма на основе Ajax с 3 переключателями. Когда проверяется один, div1 исчезает, если установлено два, div1 исчезает, div2 исчезает и т.д. Эта часть отлично работает.
Но у меня также есть уведомления об успехах и ошибках в этих формах, которые не исчезают при переключении переключателей, поэтому для div2 вы можете видеть ошибки из div1.
Я знаю, что я мог бы переименовать классы success и error box для каждой формы, но мне интересно, есть ли способ, которым я мог бы перезагрузить страницу или сбросить форму при переключении переключателей, и тогда необходимый контент исчез бы? Я пытался использовать location.reload()
, но он просто перезагружает всю страницу, и необходимый div никогда не исчезает.
Надеюсь, кто-нибудь сможет помочь, я jQuery n00b, но мне действительно начинает нравиться этот фреймворк.
Ответ №1:
Используйте hide
функцию jquery, чтобы скрыть разделы уведомлений при нажатии на радиостанции:
HTML:
<div class="notification">There is an error</div>
скрипт:
function onRadioClick() {
("div.notification").hide();
// Do your fade in stuff
}
Если я правильно понял ваш вопрос?
Комментарии:
1. Да, это работает, но в этом случае после успешного завершения сообщения в div1, и я переключаюсь на div2, а затем обратно на div1, тогда div1 полностью пуст, как я мог оставить сообщение об успехе только в этой форме?
2. Хорошо, я думаю, это единственное разумное решение для этого. Спасибо!
3. у вас должна быть какая-то функция проверки, которая отображает уведомления, верно? Тогда вам нужно запускать эту функцию только при нажатии переключателей, чтобы восстановить состояние сообщений. Чтобы помочь точнее — запустите новый вопрос для этого и включите свой код.
Ответ №2:
Предполагая, что ваша область успеха / ошибки имеет идентификатор messageArea
, внутри вашего скрипта click:
$('#messageArea').empty(); //Remove contents
//Put your error messages as you would, fade in and out and whatever you wish