Javascript.RU

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

загрузка файла по принципу ajax
Добрый день
Итак, делаю я (в инете нарыл) загрузку файлов на сервер по принципу "ajax" (чтоб незаметно было, через фрейм), вот код страницы, откуда файл загружается:
Код:
<form action="upload.php" name="uploadForm" method="post" target="hiddenframe" enctype="multipart/form-data"
onsubmit="document.getElementById('res').innerHTML=''; document.getElementById('loading').style.display='block'; 
return true;">
<input type="file" name="filename" />
<input type="submit" value="Загрузить"  />
</form>

<div id="loading" style="display:none; position: absolute; z-index: 99; left: 45%; top: 45%;">
<img src="img/loading.gif" border="0" /> Идет загрузка...
</div>
<iframe id="hiddenframe" name="hiddenframe" style="width:0; height:0; border:0"></iframe>
Вот код страницы upload.php
Код:
if (empty($error)) { ?>
   window.parent.document.getElementById("res").innerHTML="<input type='text' value='<?=$new_file_name?>' name='photo' disabled size='15' />";
<? } else { ?>
  window.parent.document.getElementById("res").innerHTML="Ошибка при загрузке файла";
<? }
(Представлены важные части кода. Остальное, по-моему, не имеет значения)
В первую же страницу возвращается ответ сюда:
Код:
<div id="res" style="margin: 1em 0"></div>
Все работает, ответ возвращается, но на самой странице (первой) он не присутствует
Скажите, пожалуйста, как можно доработать код, чтобы на первой странице в результате я получил это:
Код:
<div id="res" style="margin: 1em 0"><input type='text' value='%file_name%' name='photo' disabled size='15' /></div>
Или, может быть, можно сразу заготовить на первой странице
Код:
<input type='text' value='%file_name%' name='photo' disabled size='15' />
чтобы скрипт возвращал только имя файла
Ответить с цитированием
  #2 (permalink)  
Старый 12.05.2009, 21:31
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

какое забавное представление об ajax
http://xmlhttprequest.ru/
Ответить с цитированием
  #3 (permalink)  
Старый 12.05.2009, 22:23
Новичок на форуме
Отправить личное сообщение для neadekvat Посмотреть профиль Найти все сообщения от neadekvat
 
Регистрация: 12.05.2009
Сообщений: 2

"По принципу ajax" - имелось в виду фоновое выполнение операции
"Чистым" ajax`ом загрузить файлы на сервер нельзя
Кстати, (вдруг кому надо будет), решил свою проблему:
Убрать disabled
А для моего второго вопроса, ответ такой:
Заменить
Цитата:
window.parent.document.getElementById("res").inner HTML="<input type='text' value='<?=$new_file_name?>' name='photo' disabled size='15' />";
На
Цитата:
<input type='text' value='<?=$new_file_name?>' name='photo' size='15' id='photo2' />
(это я поставил перед объявлением джаваскрипта)
а саму строку заменил на это
Цитата:
window.top.document.getElementById('photo').value = document.getElementById('photo2').value;
Кстати, решение где-то здесь, даже страницы перелистывать не надо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка БОЛЬШИХ файлов посредством ajax barcelona jQuery 7 12.10.2012 03:37
Кодировка при использовании Ajax Nichloas AJAX и COMET 9 17.09.2009 16:06
Загрузка файла nego Общие вопросы Javascript 2 29.01.2009 17:19
Загрузка файла средставми js twolf Общие вопросы Javascript 8 21.10.2008 18:34
Возможно ли получить данные из файла на сервере? sdff Общие вопросы Javascript 11 19.07.2008 20:48