Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript非重定向_Javascript_Redirect - Fatal编程技术网

Javascript非重定向

Javascript非重定向,javascript,redirect,Javascript,Redirect,如果条件为false/true,当用户单击链接时,如何阻止HTML页面使用Javascript重定向?具体来说,链接是这样的: <a href = "something.html"> <li class ="num" id="day1" onclick = "return checkDate(1)"></li> <li class ="num" id="day2" onclick = "return checkDate(2)"></li>

如果条件为false/true,当用户单击链接时,如何阻止HTML页面使用Javascript重定向?具体来说,链接是这样的:

<a href = "something.html">
<li class ="num" id="day1" onclick = "return checkDate(1)"></li>
<li class ="num" id="day2" onclick = "return checkDate(2)"></li>
<li class ="num" id="day3" onclick = "return checkDate(3)"></li> 
</a>
只是我不知道该怎么做,所有关于这个问题的谷歌搜索结果都令人困惑。 提前感谢。

试试这个:

function checkdate(a){
if(a == 3){ return false; }

}
function checkdate( a ) {
    // block
    if ( a == 3 )
       return false;

    // your code to redirect if a != 3
}

有几件事。首先,您的标记无效<代码>
  • 标签需要一个
    父项。另外,您正在声明一个
    函数
    。JavaScript非常区分大小写,您需要将其声明为
    函数
    。我会将您的HTML修改为:

    <li class ="num" id="day1" onclick = "checkDate(1)"></li>
    <li class ="num" id="day2" onclick = "checkDate(2)"></li>
    <li class ="num" id="day3" onclick = "checkDate(3)"></li> 
    

    我可以建议在这里使用onUnload事件,但我认为更简单的解决方案是将实际的“链接”代码放在
  • 的onclick事件中。我不太确定这里的其他建议是否有效-您将为
  • 取消onclick事件,但对
    @WesleyMurch——所有OP的
    li
    标签都在anchor@WesleyMurch--我也不会大写
    函数
    :)嗯。如果“return false”对其他人有效,那么我显然在测试中做错了什么-当我把它放进去时,它并没有阻止链接。我想这一点可以忽略。这里解释了这一点的原因:
    <li class ="num" id="day1" onclick = "checkDate(1)"></li>
    <li class ="num" id="day2" onclick = "checkDate(2)"></li>
    <li class ="num" id="day3" onclick = "checkDate(3)"></li> 
    
    function checkdate(a){
        if (!a == 3) {
            //redirect
        }
    
        return false;
    }
    
    function gotoSomething(num) {
        if (checkdate(num)) {
            window.location = "something.html";
        }
    }
    
    <a href = "#">
    <li class ="num" id="day1" onclick = "gotoSomething(1)"></li>
    <li class ="num" id="day2" onclick = "gotoSomething(2)"></li>
    <li class ="num" id="day3" onclick = "gotoSomething(3)"></li> 
    </a>