Я хочу открыть новое окно (не вкладка) при нажатии кнопки и передать аргументы на новую страницу, открытую в новом окне.
Мой поиск SO взял меня на этот ответ , и я последовал за ним. Я столкнулся со следующими проблемами:
Открывается новое окно. Не получает заголовок страницы из <title>
HTML <title>
в secondIndex.php
.
Данные, которые я пытаюсь передать в hidden
поле input
формы, похоже, не передаются на открытие страницы при нажатии кнопки.
Недавно открытая страница должна иметь URL-адрес, такой как http://something/something/secondIndex.php
потому что это значение атрибута action
в теге form
. Но это скорее говорит about:blank
.
Вопрос в том, почему, где я ошибаюсь, и как я могу исправить эти проблемы?
index.php:
<?php $dataToPass = array( "A" => array( 1 => array( "id" => 1, "secondId" => 2, "thirdId" => 3 ) ), "B" => array( 1 => array( "id" => 4, "secondId" => 5, "thirdId" => 6 ), 2 => array( "id" => 7, "secondId" => 8, "thirdId" => 9 ) ), "C" => array( 1 => array( "id" => 10, "secondId" => 11, "thirdId" => 12 ) ) ); ?> <!DOCTYPE html> <html> <head> <script src="jquery.min.js"></script> <script src="scripts.js"></script> </head> <body> <form id="aForm" action="secondIndex.php" method="post" target="TheWindow" > <input type="hidden" name="hiddenData" value="<?php echo json_encode($dataToPass); ?>" /> </form> <button id="aButton">Click Me</button> </body>
secondIndex.php:
<html> <head> <title>Data</title> </head> <body> <?php if (isset($_POST["hiddenData"])) { print_r($_POST["hiddenData"]); } ?> </body> </html>
scripts.js:
$(document).ready(function() { $("#aButton").click(function() { alert("#aButton clicked.");//check window.open("", "TheWindow", "width=500px, height=500px"); document.getElementById("#aForm").submit(); }); });
-$(document).ready(function() { $("#aButton").click(function() { alert("#aButton clicked.");//check window.open("", "TheWindow", "width=500px, height=500px"); document.getElementById("#aForm").submit(); }); });