函数不返回布尔值

时间:2013-03-12 15:17:48

标签: jquery

isUpdatable方法在返回true或false时返回undefined。 这是范围问题吗?当我登录isUpdatable方法时,我看到它输出true和false但是keyup函数返回undefined。

$( function() {
var updatableEl = ['home', 'block', 'cat'];

inputFields.keyup(function(){
      var $input =  $(this);
      console.log("isUpdatable= ", isUpdatable( $input ));
    });

    function isUpdatable( el ){
        $.each( updatableEl, function( intIndex, objValue ){
           //console.log(" objValue = ", el.hasClass(objValue));
           return el.hasClass(objValue);
        });
    }

});

2 个答案:

答案 0 :(得分:0)

$.each返回原始jQuery对象(用于链接) 它忽略了其回调的返回值。

无论如何,你的代码没有意义 你正在计算三种不同的布尔值;你想回到这三个中的哪一个?

答案 1 :(得分:0)

为可能遇到过类似问题的人解决问题。

function isUpdatable( el ){            
    for( var i=0; i< updatableEl.length; i++){
                if(el.hasClass(updatableEl[i])){
                    return true;
                }
            }
    }