js里写一个当前页面弹出登陆框,用来输入用户名和密码并传到另一个页面的方法,求相助!

要在当前页面弹出一个登录框,允许用户输入用户名和密码,并将这些信息传到另一个页面,可以通过 JavaScript 实现。以下是一个详细的示例,包括如何创建弹出登录框、获取输入数据,并将数据传递到另一个页面。

实现步骤

  1. 创建登录框的 HTML 结构:使用 <div> 元素来表示登录框。
  2. 使用 CSS 样式:设置登录框的样式。
  3. 使用 JavaScript:处理表单提交并将数据传递到另一个页面。

示例代码

1. HTML 结构

在页面中添加一个隐藏的登录框,并在点击按钮时显示它。

html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Login Example</title> <style> /* 隐藏的登录框 */ #loginModal { display: none; position: fixed; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); justify-content: center; align-items: center; } /* 登录框样式 */ #loginBox { background: white; padding: 20px; border-radius: 5px; text-align: center; } </style> </head> <body> <button onclick="showLoginModal()">Login</button> <!-- 登录框 --> <div id="loginModal"> <div id="loginBox"> <h2>Login</h2> <form id="loginForm"> <label for="username">Username:</label> <input type="text" id="username" name="username" required><br><br> <label for="password">Password:</label> <input type="password" id="password" name="password" required><br><br> <button type="submit">Submit</button> <button type="button" onclick="hideLoginModal()">Cancel</button> </form> </div> </div> <script> // 显示登录框 function showLoginModal() { document.getElementById('loginModal').style.display = 'flex'; } // 隐藏登录框 function hideLoginModal() { document.getElementById('loginModal').style.display = 'none'; } // 提交表单数据 document.getElementById('loginForm').onsubmit = function(event) { event.preventDefault(); // 阻止表单的默认提交行为 var username = document.getElementById('username').value; var password = document.getElementById('password').value; // 将数据传递到另一个页面 window.location.href = 'targetPage.html?username=' + encodeURIComponent(username) + '&password=' + encodeURIComponent(password); } </script> </body> </html>

2. 目标页面(targetPage.html

在目标页面中,获取并显示传递过来的数据。

html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Target Page</title> </head> <body> <h1>Welcome!</h1> <p id="userInfo"></p> <script> // 获取 URL 参数 function getQueryParams() { var params = {}; var queryString = window.location.search.substring(1); var queryParts = queryString.split('&'); queryParts.forEach(function(part) { var item = part.split('='); params[decodeURIComponent(item[0])] = decodeURIComponent(item[1]); }); return params; } // 显示用户信息 var queryParams = getQueryParams(); document.getElementById('userInfo').textContent = 'Username: ' + queryParams.username + ', Password: ' + queryParams.password; </script> </body> </html>

说明

  • showLoginModal: 显示登录框,设置其 displayflex
  • hideLoginModal: 隐藏登录框,将其 display 设置为 none
  • onsubmit: 表单提交时阻止默认行为,获取输入的用户名和密码,并将数据传递到目标页面的 URL 中。
  • targetPage.html: 在目标页面中,通过 URL 参数获取数据并显示。

总结

这个示例演示了如何用 JavaScript 实现一个弹出的登录框,输入用户名和密码,并将这些数据传递到另一个页面。通过这种方式,你可以创建一个简单的用户登录界面并处理用户输入。

关键字

JavaScript, 弹出登录框, 用户名, 密码, 表单提交, URL 参数, window.location.href, encodeURIComponent, decodeURIComponent