Результат открытия формы в новом окне - PullRequest
1 голос
/ 17 октября 2011

У меня есть форма с двумя кнопками отправки.

Код:

<form action="index.php" method="get">
    <table cellpadding="2" cellspacing="3">
        <tr>
            <td><input type="text" name="q" size="20" /></td>
        </tr>
        <tr>
            <td>
                <input type="submit" name="site" value="site search" class="submit" />&nbsp;
                <input type="submit" name="google" value="google search" class="submit" />
            </td>
        </tr>
    </table>
</form>

Я хочу, чтобы при нажатии кнопки результаты Google открывались в новом окне.Я думаю, что это должно быть сделано с помощью JavaScript.

Ответы [ 3 ]

5 голосов
/ 17 октября 2011
<form action="http://www.google.com/search" method="get" target="_blank">
0 голосов
/ 17 октября 2011

Вы действительно можете достичь этого с помощью javascript:

<script type="text/javascript">
    function OpenGoogleSearch() {
        var q = document.getElementById("google").value;
        window.open("http://google.com/search?q=" + q);
    }
</script>

Для этого необходимо немного изменить форму:

<form action="index.php" method="get">
    <input id="google" type="text" name="q" size="20" /></td>
    <input type="submit" name="site" value="site search" class="submit" />&nbsp;
    <input type="button" name="google" value="google search" class="submit" onclick="OpenGoogleSearch()" />
</form>

Javascript использует идентификатор текстового поля (которыйВы должны добавить), чтобы получить введенное значение.Вместо отправки в поиске Google используется обычная кнопка с атрибутом onclick, которая вызывает функцию javascript.

Обратите внимание, что поиск Google открывается только в новом окне;если вы также хотите открыть «поиск по сайту» в новом окне, вы должны добавить target="_blank", как сказал Нил.

0 голосов
/ 17 октября 2011

В index.php вы можете выполнять отдельные функции в зависимости от того, какая кнопка была нажата. Например:

<?php
if(isset($_GET('google'))&&isset($_GET('q'))){
     header('Location: http://www.google.ca/search?q=' . $_GET('q'));
}
if(isset($_GET('site'))&&isset($_GET('q'))){
     //function here
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...