如果javascript返回true,则重定向到href

时间:2016-03-14 10:05:11

标签: javascript php

我有一个<a>链接和一个复选框,我只想在javascript返回true(选中该框)时重定向到href

这是我的代码:

我的javascript文件:

function fb_checkbox() {
    if (document.getElementById("checkAGB").checked == false) {
        document.getElementById('notAccepted').style.display = "block";
        return false;
    }else{
        return true;
    }

在我的PHP文件中:

<a href="'.$loginUrl.'" onclick="fb_checkbox();">Sign in with Facebook</a>

3 个答案:

答案 0 :(得分:1)

您需要在return属性的值中添加onclick

试试这个:

<a href="'.$loginUrl.'" onclick="return fb_checkbox();">Sign in with Facebook</a>

以下是工作示例:

function fb_checkbox() {
    if (document.getElementById("checkAGB").checked == false) {
        document.getElementById('notAccepted').style.display = "block";
        return false;
    }else{
        return true;
    }
  }
<input type="checkbox" id="checkAGB"/>
<div id="notAccepted" style="display:none">Check the checkbox!</div>
<a href="http://google.com" onclick="return fb_checkbox();">Works</a>

答案 1 :(得分:1)

尝试在javascript中使用它:

function fb_checkbox(url) { ... else{ window.location.href = url; }

在PHP方面:

<a href="'.$loginUrl.'" onclick="fb_checkbox(this.href);return false;">Sign in with Facebook</a>

它应该有用。

答案 2 :(得分:0)

试试这样:

<a href="javascript:void()" onclick="fb_checkbox();">Sign in with Facebook</a>

function fb_checkbox() {
    if (document.getElementById("checkAGB").checked == false) {
        document.getElementById('notAccepted').style.display = "block";
        return false;
    }else{
        window.location.href="<?=$loginUrl?>";
    }