未捕获的TypeError:对象.NumCon没有方法'apply'

时间:2012-07-21 07:24:08

标签: javascript jquery

我想运行一个jquery代码,如果数值文本输入在7之下,则结果为false。但我得到以下错误:

 Uncaught TypeError: Object .NumCon has no method 'apply'
     f.event.dispatch
     f.event.add.h.handle.i

我该怎么办?

演示:http://jsfiddle.net/FZMsP/

这是我的代码:

<form>
    <input type="password" name="user_pass" class="NumCon" id="7">
</form>

​
function NumCon() {
    var result = true;
    $(this).closest("form").find('.NumCon').each(function () {
        var size = this.value.length;
        var NumVal = $(this).attr('id');
        if (size <= NumVal) {
            $(this).css("background", "#ffc4c4");
            result = false;
        }else{
            $(this).css("background-color", "#ffffec");
        }
    });
}

$('.NumCon').live('keyup', NumCon());​

3 个答案:

答案 0 :(得分:5)

你从定义行内部调用你的函数,这是(由于某种原因)然后被解释为一个对象。

$('.NumCon').on('keyup', NumCon);​

解决您的问题。

答案 1 :(得分:0)

.live现已被折旧,您现在的意思似乎是:     $(document).on(“click”,“a.offsite”,function(){alert(“Goodbye!”);});

Jquery .live

答案 2 :(得分:0)

解决方案是

$('.NumCon').on('keyup', yourFunction(yourParameters));

来源http://api.jquery.com/on/