选中复选框并onclick重定向到PHP中的另一个页面

时间:2016-06-12 05:31:25

标签: javascript php html

我有一个登录表单和一个包含3个复选框和最终提交按钮的部分。我想编写代码,以便在选中复选框并单击提交按钮时,将根据选中的复选框将用户重定向到另一个页面。

我有:

<input type="checkbox" name="gender" value="male">
<input type="checkbox" name="gender" value="female">

我知道你可以使用

if (isset($_POST['male'])) {
    // Checkbox male is selected
} else {
    // Do something else
}

查看是否选中了复选框,

 <input type="button" value="goElsewhere" class="GE" id="GELSEWHERE" 
  onClick="Javascript:window.location.href = 'http://www.google.com';" />

单击按钮时的页面重定向。

但我不确定如何将这些结合起来。我该怎么做呢?

编辑:只有在单击最终提交按钮后,页面才会重定向。复选框应仅确定用户指向的页面。选中复选框不应重定向页面。

2 个答案:

答案 0 :(得分:1)

试试这个

<input type="checkbox" name="gender" value="male" id="male" >
<input type="checkbox" name="gender" value="female" id="female" >

<input type="submit" onClick="redirect()">

使用客户端JS(更实用)

function redirect()
{
   if(document.getElementById("male").checked == true)
        window.location.href = 'http://www.google.com';
   else if(document.getElementById("female").checked == true)
        window.location.href = 'http://www.yahoo.com';        
}

使用单选按钮不是复选框可能更实用,因为只能选择一个选项。然后使用switch语句。

<input type="radio" name="gender" value="Male">
<input type="radio" name="female" value="Female">

获取所选值类似于jbabey对此question的回答。

另一种方法是简单地在函数

中传递URL
 function redirect(url)
 {
    window.location.href = url;
 }

然后你会

<input type="checkbox" name="gender" value="female" id="female" onClick="redirect('www.google.com')">

答案 1 :(得分:0)

如果要使用PHP重定向,则执行此操作的方法如下:

header("Location: http://url.com");

这样:

if (isset($_POST['male'])) {
    header("Location: http://male-website.com");
    die(); // Stop from doing anything else
} else {
    header("Location: http://something-else.com");
    die(); // Stop from doing anything else
}

添加模具作为任何忽略标头请求的抓取工具等的安全预防措施(阻止其他任何事情发生。)

但正如穆萨所说,我会用JS做这件事。