Я работаю над формой с jQuery, когда при нажатии на определенное поле отображаются подсказки о том, что делать в этом поле в
тег. С кодом, который у меня есть сейчас, он будет работать для первого элемента, но после этого, если я попытаюсь щелкнуть другой, он не перезапишет предыдущее изменение. Я пытался использовать empty() при размытии, но это ничего не прояснит, и я не знаю, действительно ли это решит проблему. Если бы кто-нибудь мог дать мне понять, что здесь не так, я бы очень признателен!
#helpP - это абзац, который я хочу изменить внутри. Другие идентификаторы - это только поля формы.
$(document).ready(function () {
$("#mail").focus(function() {
$("#helpP").replaceWith("<p>This e-mail address will be used as your login and for receiving special offers from Volga</p>");
}).blur(function(){
$("helpP").empty();
});
$("#confirmEmail").focus(function() {
$("#helpP").replaceWith("<p>Confirm your e-mail</p>");
});
$("#confirmEmail").blur(function() {
$("#helpP").empty();
});
$("#passwordReg").focus(function() {
$("#helpP").replaceWith("<p>Passwords can only have letters and numbers and are case sensitive.</p>");
});
$("#passwordRegConfirm").focus(function() {
$("#helpP").replaceWith("<p>Enter the same password again to ensure accuracy</p>");
});
});
Я попытался связать с первым, чтобы понять, не изменилось ли это, но это не так.
Не используйте replaceWith(), чтобы использовать html(), например,
$("#mail").focus(function() {
$("#helpP").html("<p>This e-mail address will be used as your login and for receiving special offers from Volga</p>");
}).blur(function(){
$("#helpP").empty();// use # before id selector
});
Из документов replaceWith(),
Описание. Замените каждый элемент в наборе согласованных элементов предоставленным новым контентом и верните набор элементов, которые были удалены.
И это ваши elements
будут replaced
на p elements