Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: форма загрузки файлов

Сообщения:  [1-6] 

 
 автор: lElectroHardl   (23.09.2010 в 10:11)   письмо автору
 
   для: АЯ   (23.09.2010 в 04:31)
 

Проверять на document.getElementById перестали уже лет пятнадцать назад
:)

  Ответить  
 
 автор: АЯ   (23.09.2010 в 10:03)   письмо автору
 
   для: alexander95   (23.09.2010 в 09:18)
 

Вообще-то я плохо понимаю - зачем здесь много минусов и плюсов, достаточно иметь их по одному.
Соответственно, табличная форма представления здесь не нужна. Здесь более подходит список <ul style="list-style-type: none">
Но, даже если оставить табличную, то, например, можно сделать так:
<form name="FRM" enctype="multipart/form-data" method=post>
<table id="tbl">
<tr>
   <td><input type="file" size="50" name="att[]" class="input"></td>
   <td><input type="button" value=" + " onclick="addFile ()"></td>
   <td><input type="button" name="drop" value=" &minus; " onclick="dropFile ()" style="visibility: hidden">
</tr>
</table>
<input class="button" type="submit" value="Загрузить">
</form>
<script>
function dropFile ()
{
with (document.getElementById ('tbl')) {deleteRow (rows.length - 1);
document.forms.FRM.drop.style.visibility = (rows.length == 1) ? 'hidden' : 'visible'}
}
function addFile ()
{
var t = document.getElementById ('tbl'), ro = t.insertRow (-1), ce = ro.insertCell (-1);
ce.appendChild (t.rows [0].cells [0].firstChild.cloneNode (1));
var ce = ro.insertCell (-1); ce.colSpan = 2; ce.innerHTML = '&#160';
document.forms.FRM.drop.style.visibility = (t.rows.length == 1) ? 'hidden' : 'visible';
}
</script>

  Ответить  
 
 автор: alexander95   (23.09.2010 в 09:18)   письмо автору
 
   для: АЯ   (23.09.2010 в 04:31)
 

А что вы можете посоветовать вместо этого? Мне просто тоже нужна подобная форма..

  Ответить  
 
 автор: woffka   (23.09.2010 в 05:54)   письмо автору
 
   для: АЯ   (23.09.2010 в 04:31)
 

в книжке cheops'a ( один из Админов этого форума)

  Ответить  
 
 автор: АЯ   (23.09.2010 в 04:31)   письмо автору
 
   для: woffka   (23.09.2010 в 03:42)
 

Найдите в коде соответствующее место и добавьте туда выделенное жирно:
if (btn.rowIndex) btn.parentNode.removeChild(btn);

PS. А вообще, интересно, на какой-такой помойке Вы этот "скрипт" нашли?
Проверять на document.getElementById перестали уже лет пятнадцать назад, ибо браузеров, этого не понимающих, уже нет даже в архивах.
А уж прописывать комментарии внутри блока <SCRIPT>...:-)

  Ответить  
 
 автор: woffka   (23.09.2010 в 03:42)   письмо автору
 
 

Если осталась одна строчка как сделать недоступной кнопку " - ", иначе пропадает форма загрузки
<form enctype='multipart/form-data' method=post>
<table>
  <tr>
    <td><input type="file" size="50" name="att[]" class=input></td>
    <td><input type="button" name="drop" 
         value=" &minus; " onclick="dropFile(this);">
        <input type="button" value=" + " onclick="addFile(this);"></td>
  </tr>
</table>
<input class=button type=submit value='Загрузить'>
</form>
<script language='JavaScript1.1' type='text/javascript'>
<!--
function dropFile(btn)
{
  if(document.getElementById)
  {
    while (btn.tagName != 'TR') btn = btn.parentNode;
    btn.parentNode.removeChild(btn);
  }
}
function addFile(btn)
{
if(document.getElementById)
  {
    while (btn.tagName != 'TR') btn = btn.parentNode;
    var newTr = btn.parentNode.insertBefore(btn.cloneNode(true),
                                            btn.nextSibling);
    thisChilds = newTr.getElementsByTagName('td');
    for (var i = 0; i < thisChilds.length; i++)
    {
    if (thisChilds[i].className == 'files')
      thisChilds[i].innerHTML = '<input size="50" name="att[]"' +
                                'class=input type="file">';
    }
  }
}
//-->
</script>

  Ответить  

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования