#javascript #jquery #addclass
#javascript #jquery #addclass
Вопрос:
У меня есть простая часть jQuery, которая добавляет класс в абзац, когда значение скрытого ввода изменяется на 1:
$(document).ready(function() {
if ($("#acf_success_sent").val() == 1){
$("#acf_verified").addClass('gone');
}
});
Насколько я знаю, это должно сработать, но поскольку значение изменяется только на короткое время, я думаю, что класс добавляется только до тех пор, пока значение не изменится снова, поэтому это незаметно. Как я могу заставить класс придерживаться.
Большое спасибо
Комментарии:
1. Что вы подразумеваете под «поскольку значение изменяется только на короткое время»? код кажется мне довольно простым
2. Проблема, должно быть, в другом месте вашего кода, поскольку в вашем примере класс был бы добавлен постоянно (если вы не удаляете его снова в другом месте).
3. Скрытое значение генерировалось в другом месте, приносим извинения за то, что было недостаточно ясно.
Ответ №1:
Ваш код не должен ничего делать, если только значение не равно 1 в DOM ready (потому что это единственный раз, когда он будет проверять это). Если вы хотите, чтобы он постоянно проверял значение, измените его на событие onchange.
$(document).ready(function() {
$("#acf_success_sent").change(function(){
if ($("#acf_success_sent").val() == "1"){
$("#acf_verified").addClass('gone');
}
});
});
Комментарии:
1. Кажется, это правильный ответ, однако я считаю, что скрытое значение меняется только периодически. Значение изменяется при успешной отправке формы. Я связался с разработчиком. Спасибо за вашу помощь.