![](/img/trans.png)
[英]Redirect page depending on form submission in Jquery/Javascript?
[英]Javascript page redirect on Signup form submission
我對前端開發非常陌生,我正在嘗試編寫我的第一個代碼來創建注冊表單。 要求
問題區域我能夠成功地獲得步驟 1 和 2 的工作代碼:所以我有一個簡單的 CSS 用於表單,其中包含名字和姓氏、密碼、注冊和取消按鈕的輸入,並且能夠顯示如下結果:名字姓氏,您現在已注冊,但我被困在第 3 步,因為我無法使用“確定”按鈕將我帶到另一個頁面。
如果有人可以在這里幫助我,我將不勝感激。
這是代碼:
<html>
<script>
function formDisplay() {
var first = document.getElementById("fname").value;
var last = document.getElementById("lname").value;
var result = first + ' ' + last + ', ' + ' ' + "You are now Signed up ";
document.getElementById('display').textContent = result;
document.getElementById('open-button').style.display = "none";
document.getElementById('ok').style.display = "block";
}
function openform() {
document.getElementById("form-container").style.display = "block";
}
function closeDisplay() {
document.getElementById("form-container").style.display = "none";
}
function redirect() {
window.open("https://www.guru99.com/computer-programming-tutorial.html");
}
</script>
<button class="open-button" id="open-button" onclick="openform()"><b>Learn Coding</b>
<emoji>👨💻</emoji>
</button><br> <br>
<div id="form-container" class="form-container">
<form id="display" class="display">
<b>
<h3>Signup</h3>
</b>
<b>Firstname: </b><input type="text" id="fname" name="" required />
<br> <br>
<b>Lastname :</b> <input type="text" id="lname" name="" required />
<br> <br>
<b>Password : </b><input type="password" name="" required />
<br> <br>
<button id="button" class="signup" onclick="formDisplay()">Signup</button>
<button id="button" class="cancel" onclick="closeDisplay()">Cancel</button>
<button id="ok" class="ok" onclick="redirect()">OK</button>
</form>
</div>
<style>
.form-container {
color: black;
opacity: 0.85;
max-width: 350px;
background: transparent;
background-color: whitesmoke;
border-radius: 5px;
border: 1px solid #bfcdcf;
padding: 20px;
height: auto;
align-content: center;
position: relative;
display: none;
}
.open-button {
max-width: 350px;
background-color: crimson;
border-radius: 5px;
border: 1px solid crimson;
padding: 5px;
height: auto;
align-content: center;
cursor: pointer;
}
.signup {
background-color: rgb(1, 228, 1);
padding: 5px;
height: auto;
margin: 10px;
align-content: center;
cursor: pointer;
}
.cancel {
background-color: rgb(245, 10, 10);
padding: 5px;
height: auto;
margin: 20px;
align-content: center;
cursor: pointer;
}
.display {
color: black;
align-content: center;
text-align: center;
}
.ok {
color: black;
background-color: rgb(70, 130, 243);
padding: 5px;
align-content: center;
display: none;
cursor: pointer;
border-radius: 5px;
border: 1px solid #bfcdcf;
bottom: 500px;
margin: 1 auto;
left: 200px;
}
</style>
</html>
當您用“結果”替換表單的內容時,您實際上是從 DOM 中刪除了 OK 按鈕。 一個簡單的解決方案是將它從表單中刪除,同時也給它一個 type="button"。
<html> <script> function formDisplay() { var first = document.getElementById("fname").value; var last = document.getElementById("lname").value; var result = first + ' ' + last + ', ' + ' ' + "You are now Signed up "; document.getElementById('display').textContent = result; document.getElementById('open-button').style.display = "none"; document.getElementById('ok-button').style.display = "block"; } function openform() { document.getElementById("form-container").style.display = "block"; } function closeDisplay() { document.getElementById("form-container").style.display = "none"; } function redirect() { window.open("https://www.guru99.com/computer-programming-tutorial.html"); } </script> <button class="open-button" id="open-button" onclick="openform()"><b>Learn Coding</b> <emoji></emoji> </button><br> <br> <div id="form-container" class="form-container"> <form id="display" class="display"> <b> <h3>Signup</h3> </b> <b>Firstname: </b><input type="text" id="fname" name="" required /> <br> <br> <b>Lastname:</b> <input type="text" id="lname" name="" required /> <br> <br> <b>Password: </b><input type="password" name="" required /> <br> <br> <button id="button" class="signup" onclick="formDisplay()">Signup</button> <button id="button" class="cancel" onclick="closeDisplay()">Cancel</button> </form> <button id="ok-button" type="button" class="ok" onclick="redirect()">OK</button> </div> <style>.form-container { color: black; opacity: 0.85; max-width: 350px; background: transparent; background-color: whitesmoke; border-radius: 5px; border: 1px solid #bfcdcf; padding: 20px; height: auto; align-content: center; position: relative; display: none; }.open-button { max-width: 350px; background-color: crimson; border-radius: 5px; border: 1px solid crimson; padding: 5px; height: auto; align-content: center; cursor: pointer; }.signup { background-color: rgb(1, 228, 1); padding: 5px; height: auto; margin: 10px; align-content: center; cursor: pointer; }.cancel { background-color: rgb(245, 10, 10); padding: 5px; height: auto; margin: 20px; align-content: center; cursor: pointer; }.display { color: black; align-content: center; text-align: center; }.ok { color: black; background-color: rgb(70, 130, 243); padding: 5px; align-content: center; display: none; cursor: pointer; border-radius: 5px; border: 1px solid #bfcdcf; bottom: 500px; margin: 1 auto; left: 200px; } </style> </html>
簡而言之,當您在表單上設置textContent
屬性時,您正在刪除該按鈕。 一個簡單的解決方案是將ok
按鈕放在表單之外。
<html> <script> function formDisplay() { var first = document.getElementById("fname").value; var last = document.getElementById("lname").value; var result = first + ' ' + last + ', ' + ' ' + "You are now Signed up "; document.getElementById('display').textContent = result; document.getElementById('open-button').style.display = "none"; document.getElementById('ok').style.display = "block"; } function openform() { document.getElementById("form-container").style.display = "block"; } function closeDisplay() { document.getElementById("form-container").style.display = "none"; } function redirect() { window.open("https://www.guru99.com/computer-programming-tutorial.html"); } </script> <button class="open-button" id="open-button" onclick="openform()"><b>Learn Coding</b> <emoji></emoji> </button><br> <br> <div id="form-container" class="form-container"> <form id="display" class="display"> <b> <h3>Signup</h3> </b> <b>Firstname: </b><input type="text" id="fname" name="" required /> <br> <br> <b>Lastname:</b> <input type="text" id="lname" name="" required /> <br> <br> <b>Password: </b><input type="password" name="" required /> <br> <br> <button id="button" class="signup" onclick="formDisplay()">Signup</button> <button id="button" class="cancel" onclick="closeDisplay()">Cancel</button> </form> <button id="ok" class="ok" onclick="redirect()">OK</button> </div> <style>.form-container { color: black; opacity: 0.85; max-width: 350px; background: transparent; background-color: whitesmoke; border-radius: 5px; border: 1px solid #bfcdcf; padding: 20px; height: auto; align-content: center; position: relative; display: none; }.open-button { max-width: 350px; background-color: crimson; border-radius: 5px; border: 1px solid crimson; padding: 5px; height: auto; align-content: center; cursor: pointer; }.signup { background-color: rgb(1, 228, 1); padding: 5px; height: auto; margin: 10px; align-content: center; cursor: pointer; }.cancel { background-color: rgb(245, 10, 10); padding: 5px; height: auto; margin: 20px; align-content: center; cursor: pointer; }.display { color: black; align-content: center; text-align: center; }.ok { color: black; background-color: rgb(70, 130, 243); padding: 5px; align-content: center; display: none; cursor: pointer; border-radius: 5px; border: 1px solid #bfcdcf; bottom: 500px; margin: 1 auto; left: 200px; } </style> </html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.