Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.04.2010, 17:38
Интересующийся
Отправить личное сообщение для m-mikle Посмотреть профиль Найти все сообщения от m-mikle
 
Регистрация: 26.03.2010
Сообщений: 27

Отправка POST через JS без перехода на другую страницу
Мне нужно, чтобы JS отправил POST'ом необходимые переменные. Но при этом не должно быть перехода на другую страницу (То есть это не "submit()") и никаких данных возвращаться не должно. Просто POST отправка.

Для примера можно отправить переменную "abc" со значением "def" на "http://192.168.1.1/page.php" (Который уже сам сделает все остальное).

Как такое сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 12.04.2010, 17:49
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Создаем невидимый фрейм, форму, устанавливаем форме атрибуты method="post", action="http://192.168.1.1/page.php", target равный name (или id?) фрейма, наполняем нужными данными и... submit();
Ответить с цитированием
  #3 (permalink)  
Старый 12.04.2010, 17:56
Интересующийся
Отправить личное сообщение для m-mikle Посмотреть профиль Найти все сообщения от m-mikle
 
Регистрация: 26.03.2010
Сообщений: 27

Сообщение от B@rmaley.e><e Посмотреть сообщение
Создаем невидимый фрейм, форму, устанавливаем форме атрибуты method="post", action="http://192.168.1.1/page.php", target равный name (или id?) фрейма, наполняем нужными данными и... submit();
Да, но мне будет нужно отправить переменную со значением window.location.host , а во фрейме она даст адрес этого фрейма. Как тогда?

Последний раз редактировалось m-mikle, 12.04.2010 в 18:13.
Ответить с цитированием
  #4 (permalink)  
Старый 12.04.2010, 18:11
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Вообще-то сама форма не будет находиться во фрейме. Она вообще может находиться в сферическом вакууме (т.е. не являться потомком какого-либо элемента) должна быть элементом DOM'а. Это во-первых.
Во-вторых, значение вы задаете один раз и оно ни к чему не привязано. Само собой, оно не изменится, когда запрос улетит во фрейм.

Последний раз редактировалось B@rmaley.e><e, 12.04.2010 в 18:23. Причина: см. ниже
Ответить с цитированием
  #5 (permalink)  
Старый 12.04.2010, 18:14
Интересующийся
Отправить личное сообщение для m-mikle Посмотреть профиль Найти все сообщения от m-mikle
 
Регистрация: 26.03.2010
Сообщений: 27

Сообщение от B@rmaley.e><e Посмотреть сообщение
Вообще-то сама форма не будет находиться во фрейме. Она вообще может находиться в сферическом вакууме (т.е. не являться потомком какого-либо элемента).
Аааа... понял о чем вы

Но скрипт мне нужен для userjs (В Опере и Мозиле) и в нем нужно обойтись без document.write() (Т.к. тогда исчезает все, кроме написанного этой функцией). А фрейм и форму в страницу только document.write()'ом умею вставлять.
Ответить с цитированием
  #6 (permalink)  
Старый 12.04.2010, 18:16
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

http://javascript.ru/tutorial/dom/mo...bavlenie-v-dom
Ответить с цитированием
  #7 (permalink)  
Старый 12.04.2010, 18:18
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от B@rmaley.e><e
Она вообще может находиться в сферическом вакууме (т.е. не являться потомком какого-либо элемента).
Если она не будет в документе, то не отправится. По крайней мере в некоторых браузерах.

Сообщение от m-mikle
А фрейм и форму в страницу только document.write()'ом умею вставлять.
Так научитесь.
Ответить с цитированием
  #8 (permalink)  
Старый 12.04.2010, 18:23
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от Kolyaj
Если она не будет в документе, то не отправится. По крайней мере в некоторых браузерах.
Точно, в FF так не отправляется.
Ответить с цитированием
  #9 (permalink)  
Старый 12.04.2010, 18:31
Интересующийся
Отправить личное сообщение для m-mikle Посмотреть профиль Найти все сообщения от m-mikle
 
Регистрация: 26.03.2010
Сообщений: 27

Сообщение от Kolyaj Посмотреть сообщение
Так научитесь.
Спасибо, учусь. Но тут вопросик.
Там дан пример на добавление LI к UL с id="list"
// элемент-список UL
var list = document.getElementById('list')

// новый элемент
var li = document.createElement('LI')
li.innerHTML = 'Новый элемент списка'

// добавление в конец
list.appendChild(li)


А если нужно добавить <iframe src="http://192.168.1.1/page.php" бла-бла ></iframe> в body ?
Ответить с цитированием
  #10 (permalink)  
Старый 12.04.2010, 19:06
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

m-mikle, ищем
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
eMail через JS konstantinopol Общие вопросы Javascript 15 12.01.2015 10:06
Автоматическая отправка формы через JavaScript без использования body onload pavluxa09 Общие вопросы Javascript 0 17.11.2009 15:55
Как обновить страницу открытую через post Роберт Общие вопросы Javascript 1 05.11.2008 14:53
XMLHTTPRequest передача имя через POST dds AJAX и COMET 0 14.08.2008 14:44