Вопрос по JS

EA
На сайте с 15.02.2007
Offline
29
394

Добрый день.

Есть функции: (первая создаёт поле загрузки, вторая удаляет)

function AddImages() {

var tbl = document.getElementById('tblSample');
var lastRow = tbl.rows.length;

// if there's no header row in the table, then iteration = lastRow + 1
var iteration = lastRow+1;
var row = tbl.insertRow(lastRow);

var cellRight = row.insertCell(0);
var el = document.createElement('input');
el.setAttribute('type', 'file');
el.setAttribute('name', 'file_' + iteration);
el.setAttribute('size', '41');
el.setAttribute('value', iteration);
cellRight.appendChild(el);

document.getElementById('images_number').value = iteration;
}
function RemoveImages() {
var tbl = document.getElementById('tblSample');
var lastRow = tbl.rows.length;
if (lastRow > 1){
tbl.deleteRow(lastRow - 1);
document.getElementById('images_number').value = document.getElementById('images_number').value - 1;
}
}

И на веб странице форма загрузки:

<input type="hidden" name="images_number" id="images_number" value="1"> 


<table id="tblSample" class="upload">
<tr id="row">
<td><input type="file" size="41" name="file_1"></td>
</tr>
</table>

Как сделать, чтобы функция добавляла не:

<tr id="row">

<td><input type="file" size="41" name="file_1"></td>
</tr>

а:

<tr id='row'>

<td>Текст<br /><input type='file' size='41' name='file_1'><br />Текст<br />
<textarea name='tx_1' wrap='physical' cols='40' rows='2'></textarea><br />
Текст <input class='edit' size='3' type='text' name='in_1'><hr><br /></td>
</tr>
"Конкурс" (/ru/forum/201132) и "Фото конкурс" (/ru/forum/212504) для DLE.
Алексей Барыкин
На сайте с 04.02.2008
Offline
272
#1

Откройте для себя jQuery

Ссылки:

http://jquery.com/

http://ru.wikipedia.org/wiki/JQuery

http://www.rsdn.ru/article/inet/jQuery.xml

На jQuery подобные задачки решаются на раз интуитивно понятным способом.

[Удален]
#2

вот это вот


Текст<br /><input type='file' size='41' name='file_1'><br />Текст<br />
<textarea name='tx_1' wrap='physical' cols='40' rows='2'></textarea><br />
Текст <input class='edit' size='3' type='text' name='in_1'><hr><br />

нужно засунуть в cellRight.innerHTML

имейте только ввиду, что вновь сгенерированные инпуты некоторыми особо корявыми браузерами не передаются постом/гетом. Ну и здесь как нельзя кстати все таки джейКвери.

EA
На сайте с 15.02.2007
Offline
29
#3

Спасибо, воспользуюсь jQuery

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий