У меня есть это:
<form method="post" id="kl" action="step2.php"> <input type="radio" name="rubrik" value="bussines"></input> <input type="radio" name"rubrik" value="private"></input> <input type="image" value="submit" src="/images/submit.png" alt="Submit" /> </form>
То, что я люблю, – это: Когда отмечен второй переключатель, отправьте форму на step2a.php, другой файл. Как я могу это сделать? JQuery, Javascript, php?
Вы можете сделать это с помощью JavaScript (связать прослушиватель отправки, который проверяет значение переключателя, а затем устанавливает свойство действия формы), но было бы проще и надежнее что-то делать (серверная сторона) в соответствии с строками:
<form ... action="step-selector.php">
а также
<?php if (isset($_POST['rubrik']) && $_POST['rubrik'] == 'bussines') { include('step2.php'); } elseif (isset($_POST['rubrik']) && $_POST['rubrik'] == 'private') { include('step2a.php'); } else { include('error-state.php'); } ?>
в<?php if (isset($_POST['rubrik']) && $_POST['rubrik'] == 'bussines') { include('step2.php'); } elseif (isset($_POST['rubrik']) && $_POST['rubrik'] == 'private') { include('step2a.php'); } else { include('error-state.php'); } ?>
в<?php if (isset($_POST['rubrik']) && $_POST['rubrik'] == 'bussines') { include('step2.php'); } elseif (isset($_POST['rubrik']) && $_POST['rubrik'] == 'private') { include('step2a.php'); } else { include('error-state.php'); } ?>
в<?php if (isset($_POST['rubrik']) && $_POST['rubrik'] == 'bussines') { include('step2.php'); } elseif (isset($_POST['rubrik']) && $_POST['rubrik'] == 'private') { include('step2a.php'); } else { include('error-state.php'); } ?>
if($("input[@name=rubrik]:checked").val()=="private") { $("#kl").attr("action","step2a.php"); }
Теперь сделайте подачу.
Я не тестировал код, надеясь, что он даст представление.
вы можете сделать это, изменив форму на:
<form method="post" id="kl" action="step2.php"> <input type="radio" class="radio" rel="step2.php" name="rubrik" value="bussines"></input> <input type="radio" class="radio" rel="step2a.php" name"rubrik" value="private"></input> <input type="image" value="submit" src="/images/submit.png" alt="Submit" /> </form>
Я добавил атрибут rel к переключателям. каждый из них имеет значение url. Я также добавил класс, чтобы получить элемент с jQuery.
Теперь вам понадобится Javascript, я буду использовать код jQuery:
$('.radio').click(function (){ rad = $(this); radRel = rad.attr('rel'); $('form#kl').attr('action', radRel); });
Существует несколько способов сделать это, в зависимости от того, что вы хотите точно.
Проверьте это, это может помочь вам добраться туда; Кнопка «Радио» для открытия страниц
Вы можете использовать form.submit () как onclick-обработчик (а не onchange) и изменить действие.
<input type="radio" name"rubrik" value="private" onclick="this.parentNode.action='yourOtherFile.php'; this.parentNode.submit()"></input>