3

数値テキスト入力が 未満の7場合、結果が false になる jquery コードを実行したい。しかし、私は次のエラーが発生します:

 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());​
4

3 に答える 3

5

定義行の内部から関数を呼び出していますが、これは (何らかの理由で) オブジェクトとして解釈されます。

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

あなたの問題を解決します。

于 2012-07-21T07:28:20.300 に答える
0

解決策は

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

ソースhttp://api.jquery.com/on/

于 2013-05-22T19:27:41.373 に答える
0

.live は減価償却されました。使用するつもりのようです: $(document).on("click", "a.offsite", function(){ alert("Goodbye!"); });

Jquery.live

于 2013-02-18T16:39:31.867 に答える