#jquery #macos #firefox #tablesorter
#jquery #macos #firefox #tablesorter
Вопрос:
С последней версией плагина от 04.05.2011 на OSX 10.6.7 с версией FF 3.6.12 Chrome, Safari и IE все работают отлично. Я также пробовал это с отключенным FireBug, но безрезультатно.
Вот HTML, с которым я тестирую:
<!DOCTYPE html>
<html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
<head>
<script src="/javascripts/jquery/jquery-1.4.4.min.js?1301000558" type="text/javascript"></script>
<script src="/javascripts/jquery.tablesorter.js?1304537000" type="text/javascript"></script>
<script>
$(document).ready(function () {
$("#testtable").tablesorter( {debug:true} );
});
</script>
</head>
<body>
<table id='testtable'>
<thead>
<th>Col1</th>
<th>Col2</th>
<th>Col3</th>
</thead>
<tbody>
<tr>
<td>val1</td>
<td>val2</td>
<td>val3</td>
</tr>
<tr>
<td>val2</td>
<td>val1</td>
<td>val3</td>
</tr>
<tr>
<td>val3</td>
<td>val1</td>
<td>val2</td>
</tr>
</tbody>
</table>
</body>
</html>
При включенном firebug вот сообщения, которые появляются перед попыткой щелкнуть по заголовку столбца:
Built headers:,0ms
[th.header, th.header, th.header]
Checking if value was empty on row:0
Checking if value was empty on row:0
Checking if value was empty on row:0
column:0 parser:text column:1 parser:text column:2 parser:text
Building cache for 3 rows:,0ms
Вот ошибки после нажатия:
table.config.parsers[c] is undefined
которое находится в функции setTimeout около строки 600 в не уменьшенном исходном коде.
Комментарии:
1. ЭТО НЕ проблема. Мне НЕ ХВАТАЛО ТЕГА TR ВОКРУГ ТЕГОВ TH.
Ответ №1:
У меня также была такая же проблема, проблема заключалась в том, что я использовал empty, <TR>
который имел COLSPAN
во всех пустых строках.
Когда я удалил <td colspan="3">
и сделал три пустыми <TD>
, проблема исчезла.
Комментарии:
1. Спасибо @dBlaze, ваш ответ решает проблему, с которой я столкнулся с tablesorter, высоко ценится.
Ответ №2:
Я знаю, что это устарело, но я столкнулся с той же проблемой при вставке динамических данных в строки с использованием PHP. Проблема возникла только в IE. Все, что мне нужно было сделать, это отключить отладку, вот так:
$("#testtable").tablesorter( {debug:false} );
JS запускается до того, как PHP-код успел заполнить поля данными, поэтому была отображена ошибка. Легко исправить.
Ответ №3:
Я исправил эту проблему, загрузив версию 2.15.5 отсюда.