防止默认不工作Jscript if(确认){} else {prevent default}

时间:2018-06-05 22:06:44

标签: php html css jscript confirm

我确实有这个工作正常,但现在iv改变我的HTML标记,因为我认为我错过了总和,

“守则”解释了这一切,但如果没有确认,它不会阻止违约。

任何人都可以看到问题所在,

非常感谢任何信息。

由于

<?
    if (!empty($facebook)) {echo"<a href='#'onClick=\"facebookalert(); MyWindow=window.open('{$facebook}','MyWindow','width=365,height=300'); return false;\"></a>"; }

?>                                  


function facebookalert(){
if (confirm("You will be Forwarded to the sellers FACEBOOK account to make contact\nYou can return to this website as this window will not close\nThank you")) {
} else {
event.preventDefault();
     return false;
}

};

1 个答案:

答案 0 :(得分:1)

  1. 如果要使用event.preventDefault(),则需要将事件对象传递给facebookalert函数。

  2. event.preventDefault();不是你想用来防止该窗口打开。

  3. 使用这样的代替

    <?
        if (!empty($facebook)) {echo"<a href='#'onClick=\"if(facebookalert()){window.open('{$facebook}','MyWindow','width=365,height=300'); return false;}\"></a>"; }
    
    ?> 
    

    然后,只返回false就可以了

    function facebookalert(){
    if (confirm("You will be Forwarded to the sellers FACEBOOK account to make contact\nYou can return to this website as this window will not close\nThank you")) {
       return true;
    } else {
         return false;
    }
    
    };
    

    来自W3C event.preventDefault()方法停止发生元素的默认操作。

    例如:

    阻止提交按钮提交表单。

    阻止链接跟踪网址。

    它不会中止window.open执行。