Вставка значений из таблицы в input'ы
Добрый день.
Имеем обычную таблицу: 3-4 столбца, несколько строк. Под ней несколько input'ов, столько же, сколько столбцов. Реально ли сделать, что б при клике на строке данные с каждой ячейки вставлялись в соответствующий input ? |
да реально еще как :)
|
Помогите новичку, самому не осилить :(
|
<td onclick="setval(this, 'inp1')">Hello</td>
function setval(cell, id) {
document.getElementById(id).value = cell.innerHTML;
}
|
HelpeR Не нужно такому учить :nono:
<script type="text/javascript">
window.onload = function(){
var table = document.getElementsByTagName('td');
var input = document.getElementsByTagName('input');
for(i=0; i<table.length; i++){
(function(i){
table[i].onclick = function(){
input[i].value = table[i].innerHTML;
};
})(i);
}
};
</script>
<style type="text/css">
td {border-collapse:collapse; border: 1px solid #DDD; padding: 0px 5px; width: 136px;}
input {width: 148px;}
</style>
<table border="0">
<tr>
<td>td1</td>
<td>td2</td>
<td>td3</td>
</tr>
</table>
<input type="text" value="" />
<input type="text" value="" />
<input type="text" value="" />
|
monolithed, я не думаю, что научил его чему то, это была помощь, более того он вообще думаю не понял нечего из кода.
А ваше решение не подходит его просьбе. Он написал три столбца и три input. Поэтому я написал ему так, что бы у него была возможность передать id input'a |
monolithed, супер, то, что надо. А как сделать, что б при клике все 3 значения одновременно в инпуты падали ?
|
Цитата:
|
HelpeR, не совсем понял, что вы имеете в виду.
В задаче кол-во инпутов == кол-ву столбцов, и при клике на всей строке таблицы значение из 1го столбца должно падать в 1й инпут, 2-е значение во 2й инпут и т.д. Естественно у меня столбцов больше, 3-4 я взял для примера, что б вы показали мне сам алгоритм, а дальше, думаю, расширить это хоть до 20ти столбцов - дело нехитрое :) Как раз monolithed все понял именно так, как нужно ;) |
Внес небольшие изменения, так корректней наверное.
<script type="text/javascript">
window.onload = function(){
var table = document.getElementsByTagName('td');
var input = document.getElementsByTagName('input');
for(i=2, j=-1; i<table.length, j<input.length; i++, j++){
(function(i, j){
table[i].onclick = function(){
input[j].value = table[i].innerHTML;
};
})(i, j);
}
};
</script>
<style type="text/css">
table {border-collapse: collapse;}
td { border: 1px solid #DDD; padding: 0px 5px; text-align: center;width: 136px;}
input {width: 148px;}
thead {font-weight: bold;}
</style>
<table border="1">
<thead>
<td>Столбец 1</td>
<td>Столбец 2</td>
<td>Столбец 3</td>
</thead>
<tr><td>td1</td><td>td2</td><td>td3</td></tr>
<tr><td>td4</td><td>td5</td><td>td6</td></tr>
<tr><td>td7</td><td>td8</td><td>td9</td></tr>
</table>
<br />
<input type="text" value="" /><input type="text" value="" /><input type="text" value="" /><br />
<input type="text" value="" /><input type="text" value="" /><input type="text" value="" /><br />
<input type="text" value="" /><input type="text" value="" /><input type="text" value="" /><br />
доб: Цитата:
|
| Часовой пояс GMT +3, время: 14:50. |