簡體   English   中英

不重定向到頁面

[英]Not redirecting to the page

如果登錄憑據正確,我將嘗試重定向到頁面。 但它不起作用。 如果憑據錯誤,如何重定向頁面並避免提交時刷新頁面。 當我不填寫表格並提交時,它會重定向。 但是當我填寫表格時卻沒有。

 var db = window.localStorage; function login(){ var loginFormDt = document.querySelector('#login-form'); var logEmail = loginFormDt.querySelector('input[type="email"]'); var logPass = loginFormDt.querySelector('input[type="password"]'); if(db.email == logEmail.value && db.password == logPass.value){ window.location.replace = 'http://www.google.com'; }else{ window.location.replace = 'http://www.bing.com' } } function signUp () { var signupFormDt = document.querySelector('#signup-form'); var email = signupFormDt.querySelector('input[name="email"]'); var password = signupFormDt.querySelector('input[name="password"]'); var userName = signupFormDt.querySelector('input[name="name"]'); db.setItem(userName.name, userName.value); db.setItem(email.name, email.value); db.setItem(password.name, password.value); } 
 <section> <h3>login Page</h3> <div id="login"> <p><a href="../html/index.html" title="link to home page">Myselfie Tech</a></p> <form method="Post" id="login-form"> <p> <input type="email" name="email" id="email" placeholder="email" required> </p> <p> <input type="password" name="password" id="password" placeholder="password" required> </p> <p> <button type="submit" onclick="login()">Submit Query</button> </p> <p> <button onclick="window.location='../html/index.html'">Back</button> </p> </form> </div> </section> 

嘗試window.location = "some-url"window.location.href = "some-url" replace是一個字符串方法 ,而不是location的屬性。

在窗體內添加按鈕時,必須編寫onsubmit事件,而不是onclick按鈕。 因為您正在提交表格。 如果您不希望提交表單,請設置按鈕type =“ button”。 因此,您可以添加onclick事件,並且單擊時不會提交表單。

  1. 防止在提交時重新加載頁面。 您可以使用event.preventDefault()或返回false。
  2. 頁面重定向使用window.location.href =或window.location.replace();

    登錄頁面

    自拍技術

    提交查詢

    背部

     <script> var db = window.localStorage; function login(e) { console.log(e); e.preventDefault(); window.location.href='https://www.google.com'; var loginFormDt = document.querySelector('#login-form'); var logEmail = loginFormDt.querySelector('input[type="email"]'); var logPass = loginFormDt.querySelector('input[type="password"]'); if(db.email == logEmail.value && db.password == logPass.value){ window.location.replace('http://www.google.com'); }else{ window.location.replace('http://www.bing.com') } } function signUp () { var signupFormDt = document.querySelector('#signup-form'); var email = signupFormDt.querySelector('input[name="email"]'); var password = signupFormDt.querySelector('input[name="password"]'); var userName = signupFormDt.querySelector('input[name="name"]'); db.setItem(userName.name, userName.value); db.setItem(email.name, email.value); db.setItem(password.name, password.value); } </script> 

您可以使用:

window.location.replace("http://stackoverflow.com");

要么:

window.location.href = "http://stackoverflow.com";

replace()方法在字符串中搜索指定的值或正則表達式,然后返回替換了指定值的新字符串。

window.location = 'http://www.bing.com';

要么

window.location.href = 'http://www.bing.com';

或嘗試

location.href = 'http://www.bing.com';

檢查此演示代碼

 function login() { window.location.href = 'https://stackoverflow.com/'; } 
 <section> <h3>login Page</h3> <div id="login"> <p><a href="../html/index.html" title="link to home page">Myselfie Tech</a></p> <form method="Post" id="login-form"> <p> <input type="email" name="email" id="email" placeholder="email" required> </p> <p> <input type="password" name="password" id="password" placeholder="password" required> </p> <p> <button type="submit" onclick="login()">Submit Query</button> </p> <p> <button onclick="window.location='../html/index.html'">Back</button> </p> </form> </div> </section> 

欲獲得更多信息

https://www.w3schools.com/jsref/jsref_replace.asp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM