Функция изменения JQuery () не работает - PullRequest
1 голос
/ 13 октября 2010

У меня есть две таблицы, и я хочу, чтобы событие change было на одной таблице. То есть, когда я нажимаю на первую таблицу, я хочу внести некоторые изменения во вторую таблицу. Но как-то ниже функция изменения не работает. Есть предложения?

$("#history_table table:eq(0)").click(function(){
                    $("#history_table table:eq(1) thead tr th:nth-child(1)").html("New");
                }); 

$("#history_table table:eq(1) thead tr th:nth-child(1)").change(function() {
                      alert('Handler for .change() called.');
                });

Здесь history_table является идентификатором тега div и имеет две таблицы. Функция click () работает, но я ожидаю увидеть сообщение с предупреждением, но это не отображается.

1 Ответ

4 голосов
/ 13 октября 2010

Событие / обработчик .change() не для (или запускается по умолчанию для) этого, оно для элемента стиля ввода, изменяющего данные, например, <input> или <select>. Вместо этого вам понадобится пользовательское событие (или ручное срабатывание change ...), например:

$("#history_table table:eq(0)").click(function(){
  $("#history_table table:eq(1) thead tr th:nth-child(1)").html("New")
     .trigger('myEvent');
}); 

$("#history_table table:eq(1) thead tr th:nth-child(1)").bind('myEvent', function() {
  alert('Handler for .change() called.');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...