 
			
				27.02.2018, 15:08
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 09.11.2012 
					
					
					
						Сообщений: 103
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Передать $_POST в iframe
			 
			
		
		
		
		Здравствуйте! 
Что то я в трех соснах заблудился, прошу помощи. 
Такая задача. При клике на ссылку открыть новое окно и туда передать $_POST запрос.  
Новое окно открыть при помощи  http://highslide.com/tutorial#iframe-content
то есть так:
 
<a href="includes/include.php" onclick="return hs.htmlExpand(this, { objectType: 'iframe', width: 1000 } )">Жмяк_здесь</a>
С этим понятно, проблем не возникает. 
Но мне надо передать на страницу некоторые данные с той страницы, где размещена ссылка для открытия нового окна. 
Я предполагаю это сделать так:
 
document.forms[0].action = 'includes/include.php';
document.forms[0].submit();
 
Как совместить эти два действия? Одновременно открыть новое окно и передать туда $_POST  ? 
Спасибо!  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 15:09
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Форме указать в качестве target iframe, 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 16:12
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от rafaello
			
		
	 | 
 
	| 
		Но мне надо открыть новое окно именно в highslide
	 | 
 
	
 
 И какие проблемы, если это плагин, который делает ajax запросы, и в котором в качестве объекта принимающего контент можно использовать и iframe. Отдавайте плагину url запроса, остальное он сделаем сам.
 
Документация же, чего не прочесть?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 17:36
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 09.11.2012 
					
					
					
						Сообщений: 103
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Уважаемый  laimas! 
Вы не хотите вникнуть в суть моего вопроса. Убедительная просьба к вам понять, что именно я спрашиваю!! 
Вот смотрите. 
Если следовать примеру  http://highslide.com/examples/iframe.html то у нас есть ссылка, при клике на которую открывается некоторая страница "includes/include-short.htm" в новом окне.
 
<a href="includes/include-short.htm" onclick="return hs.htmlExpand(this, { objectType: 'iframe' } )">Жмяк здесь</a>
У меня же другая задача
На этой же странице, где расположена ссылка есть некая форма и вот данные этой формы надо отправить в новое окно. Чувствуете разницу?
 
<a href="includes/include-short.htm" onclick="return hs.htmlExpand(this, { objectType: 'iframe' } )">Жмяк здесь</a>
<form action="file.php" target="" method="post">	
  <label for="text">Some text:</label>
  <input type="text" name="text" id="text">	
  <input type="submit" value="post">	
</form>
1. Ссылка "Жмяк здесь" находится снаружи формы и не имеет отношения к событию "submit" 
2.  action формы и  href страницы для открытия в ифрейме совершенно разные. 
3. При клике на ссылку не надо отправлять форму по адресу action="file.php", а надо получить данные инпутов "text" и отправить эти данные методом POST по адресу href="includes/include-short.htm" и открыть новое окно  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 17:59
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от rafaello
			
		
	 | 
 
	| 
		При клике на ссылку не надо отправлять форму по адресу action="file.php", а надо получить данные инпутов "text" и отправить эти данные методом POST
	 | 
 
	
 
 Охренеть. Если не надо отправлять форму, а получить только ее поля, получайте и в предварительно открытый фрейм помещайте их. Причем тут POST? Если данные формы нужно отправить серверу для обработки методом POST, а уже ее результат поместить во фрейм, то это ajax.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 18:42
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от laimas
			
		
	 | 
 
	| 
		а уже ее результат поместить во фрейм, то это ajax.
	 | 
 
	
 
 Либо как ранее говорилось, через target. Но имя фрейма скорее всего формируется случайно, тогда по событию отправки формы, его нужно получить подставив в форму.
 
onclick="return hs.htmlExpand(this, { objectType: 'iframe' }); form.submit()"
 
и
 
form.target = document.querySelector('iframe').name; //но форму отправлять надо по ответу ajax в плагине, то есть, если есть такое событие, иначе фрейм будет недоступен
 
Вот только ответ сервера затрет содержимое фрейма, а значит серверный сценарий должен обработать поля, подключить "includes/include-short.htm" вставив эти значения куда требуется и вернуть это как ответ, который и будет помещен во фрейм.
 
Иначе описание "чего хочется" на какой-то бред похоже, ну или описано дремуче и потому выглядит бредом.  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось laimas, 27.02.2018 в 18:44.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 18:53
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 09.11.2012 
					
					
					
						Сообщений: 103
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Если не надо отправлять форму, а получить только ее поля, получайте и в предварительно открытый фрейм помещайте их.
	 | 
 
	
 
 а одновременно....?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 19:04
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от rafaello
			
		
	 | 
 
	| 
		а одновременно....?
	 | 
 
	
 
 А вы как думаете - можно послать серверу два запроса одновременно, и чтобы он два запроса одновременно обработал, и отдал ответы в два разных потока двум разным получателям?
 
У вас ведь и "хотелка", волосы дыбом. Как можно передать на страницу, которая уже открыта у клиента (include-short.htm), данные формы методом POST?!  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось laimas, 27.02.2018 в 19:36.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.02.2018, 19:16
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 09.11.2012 
					
					
					
						Сообщений: 103
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		У вас ведь и "хотелка", волосы дыбом. Как можно передать на страницу, которая уже открыт у клиента (include-short.htm), данные формы методом POST?!
	 | 
 
	
 
 А если такой вариант...... 
Давайте все упростим. 
Есть обычная форма
 
<form action="includes/include-short.htm" target="" method="post">
<input type="text" name="text1" id="text1">			
<input type="text" name="text2" id="text2">		
<input type="submit" value="post">		
</form>
 
Как сделать так, чтобы при нажатии на input type="submit" страница "includes/include-short.htm" открылась в новом модальном окне (highslide). Или другими словами привязать событие  
onclick="return hs.htmlExpand(this, { objectType: 'iframe' } )" 
к нажатию на "submit"
 
Да, вы правильно заметили, что я заранее не знаю имя ифрейма, который формируется автоматом.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |