Выделение таблицы "Без заголовка"
Всем доброго дня, собственно как можно выделить содержимое таблицы без первой строки т.е. заголовка есть вот такой пример http://jsfiddle.net/Qa6TT/2/ , все ок, только выделяет с заголовком =(. Бьюсь не первый день, направьте плз или подскажите
|
Цитата:
Не передавай в скрипт всю таблицу... Разбей табличку как положено на "шапку" и "тело"... В скрипт передавай только "тело"... |
А теперь самый кайф =)
Таблица строица из GridView asp.net, структура соответственно генерится браузером, не все генерят тело и шапку, как быть? |
Цитата:
|
Хотя там шапочные теги есть (th которые)!
Сам тогда: - ищи строки с шапочными ячейками - перекидывай те строки в thead - ну а потом работай только с tbody |
Понять просто - первая строка в таблице есть шапка =)
|
Цитата:
- бери ту строку - суй в thead - а скрипту подсовывай tbody |
Шапочные есть, да, а если строить range со второй строки? и до конца таблицы, наверно должно сработать...
|
Есче вопрос есть, про копирование в буфер. Я не спец по js, вот у IE есть прямой доступ через clipboard, а как проще всего в буфер положить с других браузеров? (костыли типо flash на страницу запихать что-то не пашут)
|
Цитата:
<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function test() {
var o=document.getElementById('table');
var oh=document.createElement('thead');
oh.appendChild(o.rows(0));
o.insertBefore(oh,o.getElementsByTagName('tbody')[0]);
o=o.getElementsByTagName('tbody')[0];
selectElementContents(o);
};
function selectElementContents(el) {
var body = document.body,
range, sel;
if (document.createRange && window.getSelection) {
range = document.createRange();
sel = window.getSelection();
sel.removeAllRanges();
try {
range.selectNodeContents(el);
sel.addRange(range);
} catch (e) {
range.selectNode(el);
sel.addRange(range);
}
} else if (body.createTextRange) {
range = body.createTextRange();
range.moveToElementText(el);
range.select();
}
}
</script>
</head>
<body>
<body>
<table id="table">
<tbody>
<tr>
<th>Heading</th>
<th>Heading</th>
</tr>
<tr>
<td>104300324384</td>
<td>32121</td>
</tr>
</tbody>
</table>
<input type="button" value="select table" onclick="test();">
</body>
</body>
</html>
|
| Часовой пояс GMT +3, время: 20:21. |