2013-08-07 4 views
0
(function($) { 

    $(function() { 

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

    }); 

})(jQuery); 

Я получаю следующее сообщение об ошибке:JQuery - TypeError: «» .match не является функцией

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?

+0

Вы не видите селектор .. '$ ('.AddRow') .delegate ('SELECTOR', 'click', function()' –

+0

Вы не смотрели документацию, прежде чем спрашивать, не так ли? –

ответ

2

У вас отсутствует параметр .delegate(). Возможно, вы все равно должны использовать .on(), хотя обратите внимание, что если вы вызываете его только с двумя параметрами, это не будет делегированной обработкой обработчика.

2

См. documentation.

.delegate() следует вызвать на элемент контейнера. Требуется три параметра: селектор для прослушивания событий, имя события и обработчик.

Смежные вопросы