jQuery - TypeError:“”。匹配不是函数

时间:2013-08-07 19:05:23

标签: javascript jquery delegates

(function( $ ) {

    $(function() {

        $( '.AddRow' ).delegate( 'click', function() {
            var $this = $( this ),
                $tbody = $this.parents( '.tbody' );
            $tbody.find( 'td:nth-child(-2)' ).css( 'background', 'red' );
        });

    });

})( jQuery );

我收到以下错误:

Timestamp: 07/08/2013 21:02:49
Error: TypeError: "".match is not a function
Source File: file:///C:/Program%20Files/Wamp/www/kbd-creator/v5/jquery-1.10.2.min.js
Line: 5

我尝试将.delegate更改为.on,错误不再出现。我在.delegate做错了吗?

2 个答案:

答案 0 :(得分:2)

您错过了.delegate()的参数。可能你应该使用.on(),但请注意,如果你只使用2个参数调用它,它就不会是委派的处理程序设置。

答案 1 :(得分:2)

请参阅documentation

应该在容器元素上调用

.delegate()。 它需要三个参数:一个用于监听事件的选择器,一个事件名称和一个处理程序。