Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   Не работает form.action (https://javascript.ru/forum/css-html-internet-explorer/2828-ne-rabotaet-form-action.html)

Moby 15.02.2009 09:45

Не работает form.action
 
Всем привет.
Имеется простая функция:
function prev_c() {
	document.form1.action = "preview.php";
	document.form1.target="_blank";
	document.form1.submit();
}

В Опере и FF работает, а в IE выдаёт: Object doesn't support this property or method.
Подскажите в чём проблема.

Moby 15.02.2009 11:17

Выяснил, что всё из-за наличия hidden поля с именем action. Тогда другой вопрос. Как в IE правильно изменить свойство action?

Gvozd 15.02.2009 13:37

лучше не пользуйтесь коллекциями содержащимися в document(all,form,images,...)
Есть отличные методы для работы с DOM-ом
http://javascript.ru/start/dom
Цитата:

Сообщение от Moby
Как в IE правильно изменить свойство action?

так же , как и в остальных
form1=document.getElementsByTagName('form')[0]
form1.action=''//Так
form1.setAttribute("action","")//Или так

Другая проблема что даже второй более правильный вариант, при инпуте action в IE не работает.
вывод.отказатся от инпута с таким именем

Kolyaj 15.02.2009 14:24

Цитата:

Сообщение от Gvozd
Другая проблема что даже второй более правильный вариант, при инпуте action в IE не работает.

Для ИЕ оба варианта одинаковы.

Gvozd 15.02.2009 14:34

Kolyaj,
ну, собственно говоря я это уже вижу.
раньше я с этим не сталкивался.
можеш объяснить, почему установка ноды не работает?

Kolyaj 16.02.2009 11:59

http://xpoint.ru/know-how/JavaScript/Atributyi?8

Gvozd 16.02.2009 12:35

спасибо.
буду знать

Moby 16.02.2009 16:35

document.form1.action = "preview.php";

поменял на
document.form1.setAttribute("action","preview.php")

и всё заработало, всем спасибо.

Gvozd 16.02.2009 18:23

Moby,
странно.
у меня не заработало под ослом.

ak630 24.04.2009 07:27

Вот такая вот конструкция...
obj = document.getElementById('form_insert');
obj.setAttribute("action","/foto_loading.asp");
obj.setAttribute("target","hiddenframe");
obj.setAttribute("method","post");
obj.setAttribute("enctype","multipart/form-data");
obj.submit();


В принципе отрабатывает, но есть одна проблема...
В IE не передается файл из поля <input type="file" ...>. При этом, из той же формы <input type="hidden" ...> передается без проблем. (Моск уже выкипает).

Есть у кого мысль, в чем может быть дело?


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