А вот дальше смутно несколько представляю

Скорее всего, надо tableid.body (или нечто в этом роде) куда-то скопировать. Что и куда?
Спустя 11 часов, 21 минута, 6 секунд (23.07.2008 - 02:25) Vento написал(а):
если еще актуально :
Работает только в ИЕ !
Если bgcolor="#00FF00" bordercolor="#FF0000" вынесены в CSS, то потеряются по дороге.
Не знаю,на сколько правильно написал,но работает однозначно.
Для других бродилок clipboardData не подходит,копать мануалы надо.
Код
<body>
<script type="text/javascript">
function vbufer()
{
txt=document.getElementById('id_diva').innerHTML
window.clipboardData.setData("Text", txt)
}
</script>
<div id="id_diva" >
<table bgcolor="#00FF00" bordercolor="#FF0000"><tr><td>копируемое1</td><td>копируемое2</td></tr></table>
</div>
<input value="копировать" type="button" onclick="vbufer()" />
</body>
<script type="text/javascript">
function vbufer()
{
txt=document.getElementById('id_diva').innerHTML
window.clipboardData.setData("Text", txt)
}
</script>
<div id="id_diva" >
<table bgcolor="#00FF00" bordercolor="#FF0000"><tr><td>копируемое1</td><td>копируемое2</td></tr></table>
</div>
<input value="копировать" type="button" onclick="vbufer()" />
</body>
Работает только в ИЕ !
Если bgcolor="#00FF00" bordercolor="#FF0000" вынесены в CSS, то потеряются по дороге.
Не знаю,на сколько правильно написал,но работает однозначно.
Для других бродилок clipboardData не подходит,копать мануалы надо.
Спустя 6 часов, 37 минут, 21 секунда (23.07.2008 - 09:02) sergeiss написал(а):
Цитата(Vento @ 23.7.2008, 3:25) [snapback]44178[/snapback]
если еще актуально...
Спасибо, работает!

Правда, немного не так, как мне бы хотелось...
Я немного модифицировал код в сторону бОльшей универсальности. Правда, результат пока достигнут только частично...
Код |
function vbufer( id ) { alert( "Before" ); txt=document.getElementById( id ).innerHTML; window.clipboardData.setData("Text", txt); alert( "Copyied" ); } |
В буфер копируется всё: и содержание, и тэги.
Пробовал заменить одну строку на txt=document.getElementById( id ).innerText; - копируется только текст, но я не могу в нем понять, где данные каждой ячейки

Как тут быть? Искать данные по каждой ячейке и вставлять их в переменную txt, разделять табуляциями и знаками "новая строка"? Или, может, есть еще какое свойство для таблиц, где это уже есть в готовом виде?
Я тут попытался найти ответ в спецификации DOM. "Поплыл" сразу же, т.к. не сосем понятно, где и чего искать. Да и вообще не понятно, там ли ищу.
Спустя 1 час, 35 минут, 38 секунд (23.07.2008 - 10:38) sergeiss написал(а):
Афигеть можно... Работает, зараза!!! 
Спасибо за помощь, мне удалось сделать нужную функцию. Учитывая, что это моя третья функция, сделанная на JS... Я считаю, что неплохо получилось
Самое главное, что результат достигнут (неожиданно) быстро. И при этом я на уровне "6-го чувства" сумел найти в спецификации DOM то, что требовалось
Далее привожу текст того, что получилось.


Спасибо за помощь, мне удалось сделать нужную функцию. Учитывая, что это моя третья функция, сделанная на JS... Я считаю, что неплохо получилось


Далее привожу текст того, что получилось.
Код |
function vbufer( id ) { var txt=""; var tab=document.getElementById( id ); var rows=tab.rows.length; var row; var cols; for( i=0; i < rows; i++) { row=tab.rows[ i ]; for( j=0; j<row.cells.length; j++) { txt = txt + row.cells[j].innerText +"\t"; } txt = txt + "\n"; } window.clipboardData.setData("Text", txt); } |
Теперь кнопочку рядом с таблицей ЖМЯК - и можно вставлять результат в Эксель.
_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL
* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.
* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)
