1 форма 2 действия - PullRequest
       1

1 форма 2 действия

1 голос
/ 24 августа 2011
<form name="ipladder" id="ipladder" action="/checkuser/master-check.php"  method="post">
<input name="ipladder" type="text" id="ipladder" />

<input type="submit" name="submit" id="botton" value="Check" /> 
<input type="submit" name="geo" id="botton"/>
</input></form>

У меня есть одно поле ввода и 2 кнопки отправки. Когда первая кнопка нажата (name = "submit"), я хочу, чтобы она пошла в master-check.php, как указано в параметре action =. Однако, когда кнопка geo нажата, я хочу, чтобы она прошла через другое действие, которое я не указал, потому что я не знал, как это сделать.

Что я могу сделать, чтобы у меня было 1 поле ввода и 2 кнопки для каждой обработки различных файлов действий?

Ответы [ 4 ]

3 голосов
/ 24 августа 2011

Возможно, вы можете попробовать изменить параметр "action" вашей формы в методе onclick, который после изменения отправляет форму. Что-то вроде:

$('#btn1').click(function(){
  $('#ipladder').attr('action', 'location1.php');
  $('#ipladder').submit();
});

$('#btn2').click(function(){
  $('#ipladder').attr('action', 'location2.php');
  $('#ipladder').submit();
});

Другой вариант couse - это разместить на 1 странице ... и обрабатывать логику (некоторую переадресацию или что-то еще) там.

2 голосов
/ 24 августа 2011

Вместо использования формы действий, я думаю, вы можете использовать Ajax для достижения того, что вы хотите.Это будет что-то вроде этого:

<form name="ipladder" id="ipladder" method="post">
    <input type="text" id="ipladder2" name="ipladder2" />
    <input type="button" id="button1" name="submit" value="Check" onclick="action1()" />
    <input type="button" id="button2" name="geo"    value="Something else" onclick="action2()" />
</form>

и в заголовке вы можете определить 2 функции Ajax:

<script type="text/javascript">
    function action1() 
    {
        $.ajax({
           type: "POST",
           url: "/checkuser/master-check.php",
           data: $("ipladder2").val(),
           success: //do something,
           dataType: //return dataType
        }); 
    }

    function action2() 
    {
        $.ajax({
           type: "POST",
           url: //other URL,
           data: $("ipladder2").val(),
           success: //do something else,
           dataType: //return dataType
        }); 
    }
</script>
2 голосов
/ 24 августа 2011

Создайте один скрипт PHP, который будет обрабатывать нажатие какой-либо кнопки, а затем перенаправлять на исправление скрипта обработки PHP (после исправления того, что Юхана прокомментировал, конечно).

0 голосов
/ 24 августа 2011

Ну, вы можете достичь своей цели с помощью одной страницы php.на mastercheck.php что-то подобное может помочь вам.

    <?php 
    if($_POST['submit'])
    {
       //you code for master-check.php
    }
else if(isset($_POST['geo']))
{
   //you code for other page goes here
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...