Javascript-форум (https://javascript.ru/forum/)
-   Dojo toolkit (https://javascript.ru/forum/dojotoolkit/)
-   -   Firefox - не отправляются файлы через динамически созданные элементы формы (https://javascript.ru/forum/dojotoolkit/6187-firefox-ne-otpravlyayutsya-fajjly-cherez-dinamicheski-sozdannye-ehlementy-formy.html)

Dumb 17.11.2009 14:24

Firefox - не отправляются файлы через динамически созданные элементы формы
 
Здравствуйте,
решил создать форму с варьируемым кол-вом подгружаемых файлов.
Для создания новых элементов input типа file использовал следующий код:
var addFileInput = function()
{
        // эта подфункция для генерации рандомного имени
	var newName = function()
	{
		var rand = Math.random();
		var name = 'file' + rand
	
		if (dojo.byId(name))
		{ 
			return newName();
		}
		else
		{
			return name;
		}
	}
	
	var mainDiv = dojo.byId('files');
	var fileDiv = dojo.create('div', {}, mainDiv);
	var fileName = newName();
	var newInput = dojo.create('input', {type: 'file', name: fileName, id: fileName }, fileDiv);

Это реализуется в след. html-коде
<form method="POST" enctype="multipart/form-data" action="" id="form_exhibition_edit" class="form_exhibition_edit">
<div id="files"></div>
<div><button onclick="addFileInput(); return false;">Добавить</button></div>
</form>


В ie все происходит так как надо:
- добавляется нужное кол-во элементов
- при нажатии submit форма отправляется на сервер вместе со всеми подгружаемыми файлами

В firefox
- добавляется нужное кол-во эл-тов
- но не отправляются файлы

Помогите, пожалуйста, разобраться, в чем проблема в firefox?

Dumb 17.12.2009 12:04

Блин, неужели никто не знает ответ на вопрос(

Gvozd 17.12.2009 23:37

не работаю с dojo
попробуйте переписать код под чистый JS, благо это не так уж трудно, и проверить
http://javascript.ru/tutorial/dom

twolf 21.12.2009 18:01

если элементы добавляются то доджевский код нормально отрабатывает.
а сабмитите форму как?

MODist 21.01.2010 12:08

Покажите весь код. Опишите способ сабмита.

Gvozd 21.01.2010 15:32

MODist,
чего некропостишь?

MODist 21.01.2010 16:04

Ух, блин. Недосып.


Часовой пояс GMT +3, время: 01:30.