Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.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只是不';t重定向,改为重新加载index.html_Javascript_Html - Fatal编程技术网

Javascript只是不';t重定向,改为重新加载index.html

Javascript只是不';t重定向,改为重新加载index.html,javascript,html,Javascript,Html,所以,我试图制作一个小的虚拟登录表单,当我点击一个按钮时,它会将我重定向到另一个页面。 但它只是没有,而是重新加载index.html HTML(编辑): 起初我认为它可能没有重定向,因为它根本没有调用函数,但它确实调用了。每次都会触发警报,但随后它会重新加载页面 当我告诉它在init函数中进行重新定位时,它也可以重新定位。哪里出错了?元素的默认行为是执行提交操作。由于您没有取消,因此表单正在提交,您对location.href所做的更改将被忽略。由于您尚未为action=“”指定值,提交只是导

所以,我试图制作一个小的虚拟登录表单,当我点击一个按钮时,它会将我重定向到另一个页面。 但它只是没有,而是重新加载index.html

HTML(编辑):

起初我认为它可能没有重定向,因为它根本没有调用函数,但它确实调用了。每次都会触发警报,但随后它会重新加载页面


当我告诉它在init函数中进行重新定位时,它也可以重新定位。哪里出错了?

元素的默认行为是执行提交操作。由于您没有取消,因此表单正在提交,您对
location.href
所做的更改将被忽略。由于您尚未为
action=“
”指定值,提交只是导致当前页面刷新

有三种不同的方法可以避免这种情况:

  • 在按钮上指定
    type=“button”
  • 阻止事件处理程序中的默认行为:

  • 您也可以使用更简单的方法,我更喜欢按钮标记中的window.location.href,如下所示:

    <button class="Whatever you want to call it" onclick="window.location.href='The_Page_You_Want_To_Redirect_To.html'"></button>
    
    
    

    然后您可以根据需要使用CSS为按钮设置样式

    按钮是什么类型的元素?是否是一个提交按钮或锚点具有可能重新加载页面的默认行为?(您显示的代码不会取消任何与单击元素相关的默认行为。)请向我们显示您按钮的HTML。对不起,我忘记了。我添加了它。你只是想在点击按钮时执行重定向,还是在那里提交表单?现在我只想重定向。这是一个大学项目,所以还没有真正的证书,一切都是假的。哇,非常感谢你,太多了!我一点都不知道,我也找不到。这真的很有帮助,而且现在效果很好!谢谢你抽出时间!不,我真的想把我的文件分开。我认为这是一种更好的编码风格,可以让事情更整洁。但是非常感谢你的帮助。
    window.addEventListener("load",init, false);
    
    function init() {
        var loginBtn = document.getElementById("loginBtn");
        loginBtn.addEventListener("click", checkLogin, false);
    }
    
    function checkLogin(e) {
        alert("FIRED");
        if(1>0){
            window.location.href = "//www.google.com";
        }
    }
    
    <button class="btn btn-default pull-right btn-large" 
            id="loginBtn" style="margin-right: 20px;" type="button">Login</button>
    
    <input class="btn btn-default pull-right btn-large" value="Login"
            id="loginBtn" style="margin-right: 20px;" type="button" />
    
    function checkLogin(e) {
        e.preventDefault();
    
        alert("FIRED");
        if(1>0){
            window.location.href = "//www.google.com";
        }
    }
    
    <button class="Whatever you want to call it" onclick="window.location.href='The_Page_You_Want_To_Redirect_To.html'"></button>