如何访问JQuery对象

How to access the JQuery object

本文关键字:JQuery 对象 访问 何访问      更新时间:2023-09-26

当validateName被调用时,我如何访问jquery对象?

在下面的代码中,errorDate不是一个JQuery对象。

对变量名

的更正
$(document).ready(function() {
    var errorDate = $("#errorDate");
    errorDate.blur(validateName);
    function validateName() {
        if (errorDate.val().length == "") {
            errorDate.addClass("error");
            return false;
        }
        else {
            errorDate.removeClass("error");
            return true;
        }
    }  
});

$(this)代替name

你可以

$(document).ready(function() {
    var errorDate = $("#errorDate");
    errorDate.blur(validateName);
    function validateName() {
        var $this = $(this);
        if ($this.val().length == "") {
            $this.addClass("error");
            return false;
        }
        else {
            $this.removeClass("error");
            return true;
        }
    }  
});

或者使用errorDate代替name,因为它是一个闭包变量

$(document).ready(function() {
    var errorDate = $("#errorDate");
    errorDate.blur(validateName);
    function validateName() {
        if (errorDate.val().length == "") {
            errorDate.addClass("error");
            return false;
        }
        else {
            errorDate.removeClass("error");
            return true;
        }
    }  
});

试试这个,

$(document).ready(function() {
    var errorDate = $("#errorDate");
    errorDate.blur(validateName);
    function validateName() {
        // no need to get length you can use $(this).val()==""
        if ($(this).val() == "") {
            $(this).addClass("error");
            return false;
        }
        else {
            $(this).removeClass("error");
            return true;
        }
    }  
});
操纵http://jsfiddle.net/jtWFX/

相关文章: