Показать сообщение отдельно
  #1 (permalink)  
Старый 26.03.2015, 13:46
Интересующийся
Отправить личное сообщение для hack3p Посмотреть профиль Найти все сообщения от hack3p
 
Регистрация: 26.03.2015
Сообщений: 10

Помощь с таблицей
Здравствуйте, потихоньку осваиваю JS.
Пытаюсь сделать живое редактирование таблицы, однако данный скрипт преобразует оба <td> в input, а нужно, чтобы только второй <td> преобразовался. Пожалуйста помогите

Пример:

<td>Математика</td> <td> 5 </td>
<td>Математика</td> <td><input type="text" value=5></td>

(function(){
        var table = document.getElementById('edit');
        for (var i = 0; i < table.tBodies[0].rows.length; i++) {
            var row = table.tBodies[0].rows[i];
            row.onclick = onRowClick;
        }
        function onRowClick(event) {
            var target = event ? event.target : window.event.srcElement;
            this.onclick = null;
            this.className = 'editable';
            for (var i = 0; i < this.cells.length i++) {
                var cell = this.cells[i];
                var input = document.createElement('input');
                input.setAttribute('type', cell.getAttribute('data-type') || 'text');
                input.value = cell.firstChild.data;
                dump(input.value);
                cell.replaceChild(input, cell.firstChild);
                if (cell == target)
                    input.focus();
            }
        }
    })();


<table id="edit">
	<thead>
	<tr>
		<td>
			<b>Предмет</b>
		</td>
		<td>
			<b>Оценка</b>
		</td>
	</tr>
	</thead>
	<tbody>
		<td>
			Алгебра
		</td>
		<td>
			4
		</td>
		<td>
			Русский
		</td>
		<td>
			4
		</td>
		<td>
			Литература
		</td>
		<td>
			4
		</td>
		<td>
			Химия
		</td>
		<td>
			4
		</td>
	</tbody>
</table>


Заранее спасибо!
Ответить с цитированием