blur()和focus()没有使用replaceWith()处理jQuery

时间:2013-12-03 08:56:08

标签: jquery forms focus blur replacewith

我正在使用jQuery处理表单,当您单击某个字段时,它将在

标记中显示该字段中的操作提示。使用我现在的代码,它将适用于第一个元素,但之后如果我尝试单击另一个元素,它将不会覆盖先前的更改。我试图在模糊上使用empty(),但这不会清除任何东西,我不知道这是否真的能解决问题。如果有人能给我任何有关错误的见解,我会非常感激!

#helpP是我要在其中更改文本的段落。其他ID只是表单字段。

$(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 个答案:

答案 0 :(得分:0)

请勿使用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 replacedp elements

一致