JQUERY失去焦点时验证多个表单

今天算忙死了,登录验证用的JS的innerHTML,竟然只要IE9认识。朋友建议用JQ,于是就改成JQ,很少用JQ,看了点文档,写了一个用来验证三个表单,如下:

 $(function(){
     $("#username").blur(function(){//用户名文本框失去焦点触发验证事件

       if(!$(this).val())//只处验证不能为空并且只能为英文或者数字或者下划线组成的2-15个字符
        {
            $("#vuser").html("<span style="color:#ff0000; font-size:16px">*</span>");
        }
        else
        {
            $("#vuser").html("");
        }
    });
    $("#pwd").blur(function () {//用户名文本框失去焦点触发验证事件

        if (!$(this).val())//只处验证不能为空并且只能为英文或者数字或者下划线组成的2-15个字符
        {
            $("#vpwd").html("<span style="color:#ff0000; font-size:16px">*</span>");
        }
        else {
            $("#vpwd").html("");
        }
    });
    $("#verifyCode").blur(function () {//用户名文本框失去焦点触发验证事件

        if (!$(this).val())//只处验证不能为空并且只能为英文或者数字或者下划线组成的2-15个字符
        {
            $("#vcode").html("<span style="color:#ff0000; font-size:16px">*</span>");
        }
        else {
            $("#vcode").html("");
        }
    });
});

写完后一看,天呐,这我要弄十个表单岂不是要写十次,真是太恐怖了。。。又向朋友求解,朋友告诉我一个方法,经一番努力后,写下如下代码

 $(function () {
            $("input[must='must']").blur(function () {
                if ($(this).val().length == 0) {
                    $(this).next().html("<font style='color:#f00'>*</font>");
                }
                else {
                    $(this).next().html("");
                }
            });
        });

表单是这样的

 <div class="user">
                用户名:<input id="username" name="username" must='must' type="text" /><span t='v'></span></div>
            <div class="user">
                密 码:<input id="pwd" name="pwd" type="password" must='must' /><span t='v'></span></div>
            <div class="user">
                <div class="yzk">
                    验证码:<input id="verifyCode" name="verifyCode" type="text" must='must' /><span t='v'></span></div>
                <div class="yzm">
                    <span id="img_yzm"></span>
                </div>
            </div>

神呀,少了这么多代码。以后要多学学JQ啦,不能固步自封了。。。

上一篇‡: 强制关闭浏览器窗口的JS,不用确认。

下一篇‡: [转]hosts自动更新

最近回复