Использование JS обработчиков для тэга <tr> в <table>

212
08 мая 2017, 01:58

Добрый день! Необходимо на всю строку таблицы повесить обработчики событий. Т.е. на события mouseover, click,mouseout для каждой строки в таблице вешается свой обработчик. (Независимо от того, на какую ячейку навел мышку/кликнул пользователь, срабатывает общий алгоритм).

Т.к. табличка строится динамически через JS добавил следующий код при формировании:

ttable=document.createElement('table');
row = ttable.insertRow(-1);
row.setAttribute('mouseover','set_order_mouseover(this)');
row.setAttribute('click','set_order_mouseover(this)');
row.setAttribute('mouseout','set_order_mouseover(this)');
...код формирования ячеек

Функция set_order_mouseover:

function set_order_mouseover(el){
    alert('1');
}

В результате отработки JS строится таблица со следующим HTML кодом:

<table class="uk-table" id="history_table">
<tbody>
<tr mouseover="set_order_mouseover(this)" click="set_order_mouseover(this)" mouseout="set_order_mouseover(this)" >
<td>1</td>
<td>2017.03.20 14:02</td>
<td>НФ-00000000025</td>
<td>Москва г, Квесисская 2-я ул, 18</td>
<td>105120, Москва г, Сыромятнический 3-й пер, 3/9 стр. 1</td>
<td>420</td>
<td>Отменен</td><td>2017.03.21 15:00</td>
<td>
</td>
<td>
</td>
</tr>
</tbody>
</table>

Но ни одно из событий не срабатывает. В чем может быть ошибка?

Answer 1

Неправильный вызов событий: click="set_order_mouseover(this)" меняем на onclick="set_order_mouseover(this)", а mouseout="set_order_mouseover(this) на onmouseout="set_order_mouseover(this)".

READ ALSO
Как встроить свой js-код в мозиллу

Как встроить свой js-код в мозиллу

Как заставить мозиллу выполнять определенный js-код при получении ею html-страницы? Допустим, какую-бы страницу я в ней не открывал, всегда срабатывал...

176
javascript поиск и replaсe по строке с условием

javascript поиск и replaсe по строке с условием

Имеется строка которая может быть такого вида

222
Как определить версию ECMAscript?

Как определить версию ECMAscript?

Определить по имеющемуся кодуМне это нужно для Google Closure Compiler, там можно указать версию ECMAscript

237
Не работает тень в three js

Не работает тень в three js

Не могу настроить теньЧто не так?

200