javascript - 如何将 html 输入数据传递给 javascript 类
问题描述
我正在尝试将数据从 html 输入传递到 vanilla JS 类构造函数。这是我尝试过的。
class Users {
constructor(email,password) {
this.email = email;
this.password = password;
}
login(){
// url for endpoint
let url = "http://127.0.0.1:5000/api/v2/users/login"
alert(this.password)
// get login data from ui
let data = {
email : this.email,
password : this.password
};
}
let email = document.getElementById('email').value,
let password = document.getElementById('password').value
const user = new Users(email,password)
document.getElementById('login').addEventListener('submit', user.login())
似乎没有数据传递给电子邮件和密码变量。
我也尝试过这样做,但没有调用该对象
class Users {
constructor(email,password) {
this.email = email;
this.password = password;
}
login(){
// user the data here
}
function load(event){
let email = document.getElementById('email').value,
let password = document.getElementById('password').value
const user = new Users(email,password)
user.login()
}
document.getElementById('login').addEventListener('submit', load)
有人帮我解决这个问题。
解决方案
我已尽力重构您的代码。根据您要对数据执行的操作,这取决于您。但是在下面的代码中,您可以在登录功能中获取电子邮件和密码
class Users {
constructor() {
}
login(){
let email = document.getElementById('email').value,
password = document.getElementById('password').value
alert(email, password)
}
}
const user = new Users();
const login = user.login
<input type="text" id="email" />
<input type="text" id="password" />
<button id="login" onclick="login()">submit</button>
推荐阅读
- vue.js - vue.js 的 ESLint 警告和错误 - vue/require-default-prop & vue/require-prop-type-constructor
- sql - MS Access - 迄今为止的字符串
- lit-element - mwc-icon 0.7.1 不渲染(使用 lit-element/pwa-starter-kit)?
- php - 使用表格中的日期并将其与新日期进行比较
- php - 在 WooCommerce 中以编程方式创建税类
- android - 在 appium java 客户端 7.0.0 中使用坐标水平滑动
- php - 通过 localhost(路径)修复我在 Web 中的访问的任何帮助。它可以通过 IP 工作,但不能通过 localhost
- android - 由于错误 157,编译失败
- sql - Oracle如何从日期中提取月份数
- python - 是否可以使用 cx_Freeze 将调用带有 ctypes 的 DLL 的脚本转换为可执行文件,我该怎么做?