blur() и focus() не работают в jQuery с replaceWith()

Я работаю над формой с помощью 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>");
     });
 });

Я попытался соединиться с первым, чтобы увидеть, имеет ли это какое-то значение, но это не так.

1 ответ

Решение

Не используйте 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

Другие вопросы по тегам