重定向表单用户提交时,基于无线电选择仅
Redirect Form User When Submit Based On Radio Selection Only
我对编码的了解非常少,所以我要边学边学。
在我的多页表单中,我有4个"无线电"类型选择,最终用户必须选择至少1个才能继续使用表单。我想做的是有表单重定向用户到特定的页面关系到他们所选择的无线电输入当他们提交表单。
我看了你的视频,读了很多旧的帖子,我尝试的一切似乎都不起作用。
我不确定javascript, jquery或php是否最好使用if或isset语句,由于我的知识,我没有更新正确的搜索短语,以便找到正确的方法,所以经过14个小时的尝试,我不得不寻求你的专业知识!
任何简单的方法都是足够的,非常有帮助的,因此我希望有人能帮我解决这个问题。
例如,4个单选项将放在:
<input class="form-radio" type="radio" id="hbs" name="options" value="hbs" /> ==> page1.php
<input class="form-radio" type="radio" id="bs" name="options" value="bs" /> ==> page2.php
<input class="form-radio" type="radio" id="pvr" name="options" value="pvr" /> ==> page3.php
<input class="form-radio" type="radio" id="epc" name="options" value="epc" /> ==> page4.php
我需要的代码只重定向用户时,他已经点击提交,这样做的原因是有多个字段在同一页的形式作为单选。
谢谢
您可以通过php中的header('Location: url');
重定向到特定的页面。
下面是一个符合你要求的例子:
<?php
$value_to_page = array(
"hbs" => 'page1.php',
"bs" => 'page2.php',
"pvr" => 'page3.php',
"epc" => 'page4.php',
);
if(isset($_POST['submit'])){
// process other fields like $_POST['some-other']
if(isset($_POST['options']) && isset($value_to_page[$_POST['options']])){
header('Location: '.$value_to_page[$_POST['options']]);
return;
}
} ?>
<form method="post">
<input type="text" name="some-other" />
<input class="form-radio" type="radio" id="hbs" name="options" value="hbs" />
<input class="form-radio" type="radio" id="bs" name="options" value="bs" />
<input class="form-radio" type="radio" id="pvr" name="options" value="pvr" />
<input class="form-radio" type="radio" id="epc" name="options" value="epc" />
<button type="submit" name="submit">Send</button>
</form>
一个简单的解决方案可能是require_once您想要POST结果的页面代码,如下所示(将其放置在php文件的顶部,高于任何HTML):
<?php
switch ($_POST["options"]) {
case "hbs":
require_once("page1.php");
break;
case "bs":
require_once("page2.php");
break;
case "pvr":
require_once("page3.php");
break;
case "epc":
require_once("page4.php");
}
die();
?>
好吧,这是一个好问题,这并不难,但遵循使用jQuery,你也可以看到它在jsfiddle中工作(将不能正常工作在jsfiddle安全问题,但在你的机器上试试):
<form id="myForm">
<input class="form-radio" type="radio" id="hbs" checked="true" name="options" value="hbs" page="page1.php" /> ==> page1.php
<input class="form-radio" type="radio" id="bs" name="options" value="bs" page="page2.php" /> ==> page2.php
<input class="form-radio" type="radio" id="pvr" name="options" value="pvr" page="page3.php" /> ==> page3.php
<input class="form-radio" type="radio" id="epc" name="options" value="epc" page="page4.php" /> ==> page4.php
<button type="submit">send</button>
</form>
<script>
$(function(){
$("#myForm").submit(function(e){
var page = $(this).find("input[name=options]:checked").attr("page");
this.action = page;
});
});
</script>
相关文章:
- jQuery识别页面加载上的单选按钮的不正确状态,当单选值=“0”时;否”;并且两个无线电都没有被选择
- 可以't获取输入无线电选择值
- 启用/禁用使用jquery选择无线电的控制
- 如何添加属性“;“必需”;基于Javascript/Jquery中的无线电选择
- 如果选择了所有无线电中的任何一个选项,则显示 Div
- j查询 按值选择无线电
- 取消选择较低的无线电输入
- 单击标签应选择无线电输入
- 量角器如何选择无线电输入标记
- 不选中更改选择无线电
- 无线电/复选框按钮”;oncheck”;使用javascript检查/选择时的事件
- 使用无线电输入和knockoutjs选择客户地址
- 如何预先选择无线电组按钮时;name”;属性具有“;[]”;使用jQuery
- Jquery选择多个无线电输入
- 如何取消选择所有无线电输入
- 显示基于多个无线电选择的字段
- 表格提交在无线电选择
- 使用Javascript验证无线电选择
- 重定向表单用户提交时,基于无线电选择仅
- 根据无线电选择要显示的字段