|
|
|
| помню, точно была такая - про загрузку большого числа файлов, их число заранее неизвестно. там в форме по клику на кнопке добавлялись поля. статью про DOM читала, сильно заумно. мне бы попроще что-нибудь...
отбой! нашла :)
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=11131&page=3 | |
|
|
|
|
|
|
|
для: elenaki
(31.10.2006 в 21:35)
| | Я лично таким кодом пользуюсь(откуда утянул уже не помню)
Хех - ну вот, не успел
<script language="JavaScript" type="text/javascript">
function attachmentFields()
{
fields = new Array();
for (var i = 0; i < document.upload.elements.length; i++)
{
if (document.upload.elements[i].type == 'file' && document.upload.elements[i].name.substr(0, 7) == 'upload_')
fields[fields.length] = document.upload.elements[i];
}
return fields;
}
function attachmentChanged()
{
var usedFields = 0;
var fields = attachmentFields();
for (var i = 0; i < fields.length; i++)
if (fields[i].value.length > 0)
usedFields++;
if (usedFields == fields.length)
{
var lastRow = document.getElementById('attachment_row_' + usedFields);
if (lastRow)
{
var newRow = document.createElement('TR');
newRow.id = 'attachment_row_' + (usedFields + 1);
var td = document.createElement('TD');
newRow.appendChild(td);
td.align = 'left';
td.colspan='5';
var b = document.createElement('B');
td.appendChild(b);
b.appendChild(document.createTextNode('File ' + (usedFields + 1) + ':'));
td.appendChild(document.createTextNode(' '));
var file = document.createElement('INPUT');
file.type = 'file';
td.appendChild(file);
file.name='file[]';
file.name = 'upload_' + (usedFields + 1);
file.size = 45;
td = document.createElement('TD');
newRow.appendChild(td);
lastRow.parentNode.insertBefore(newRow, lastRow.nextSibling);
}
}
}
</script>
<form method="post" enctype="multipart/form-data" name="upload">
<table>
<tr id="attachment_row_1">
<td colspan="3"><b>File 1:</b> <input type="file" name="upload_1" size="45"></td>
</tr>
</table>
<input type="Button" onclick="attachmentChanged();" value="Attach another"><br>
<input type="Submit" value="Upload All">
</form>
|
| |
|
|
|