判断form表单中id为pas的密码password与确认密码repassword一致就发送form表单请求
时间: 2023-09-01 10:13:42 浏览: 138
您可以使用JavaScript编写一个函数,在提交表单时验证密码和确认密码是否匹配。例如,您可以在表单的submit事件上调用以下函数:
```
function submitForm() {
var password = document.getElementById("pas").value;
var repassword = document.getElementById("repassword").value;
if (password !== repassword) {
alert("密码和确认密码不匹配!");
return false; // 阻止表单提交
}
// 密码和确认密码匹配,可以提交表单
return true;
}
```
在这个例子中,我们获取了密码和确认密码的值,然后比较它们是否相等。如果不相等,我们弹出一个警告框并返回false,以阻止表单提交。如果匹配,我们返回true,表单会继续提交。您可以将此函数与表单的submit事件关联起来,例如:
```
<form onsubmit="return submitForm()">
<!-- 表单元素 -->
</form>
```
这样,在用户点击提交按钮时,我们会调用submitForm()函数来验证密码和确认密码是否匹配。如果不匹配,我们会阻止表单提交,否则表单会继续提交。
相关问题
element-plus新增用户的表单校验例子
好的,让我来回答你的问题。
element-plus是一个Vue 3.0的UI组件库,它提供了很多优美的界面和易于使用的组件。以下是一个使用element-plus实现表单校验的例子:
```html
<template>
<el-form :model="form" :rules="rules" ref="form" label-width='120px' size="medium">
<el-form-item label="用户名" prop="username">
<el-input v-model="form.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="form.password"></el-input>
</el-form-item>
<el-form-item label="确认密码" prop="repassword">
<el-input type="password" v-model="form.repassword"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('form')">提交</el-button>
<el-button @click="resetForm('form')">重置</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
name: 'Example',
data() {
var validatePass = (rule, value, callback) => {
if (value === '') {
callback(new Error('请再次输入密码'));
} else if (value !== this.form.password) {
callback(new Error('两次输入密码不一致!'));
} else {
callback();
}
};
return {
form: {
username: '',
password: '',
repassword: '',
email: ''
},
rules: {
username: [
{ required: true, message: '请输入用户名', trigger: 'blur' },
{ min: 3, max: 20, message: '长度在 3 到 20 个字符', trigger: 'blur' }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, max: 20, message: '长度在 6 到 20 个字符', trigger: 'blur' }
],
repassword: [
{ required: true, validator: validatePass, trigger: 'blur' }
],
email: [
{ required: true, message: '请输入邮箱', trigger: 'blur' },
{ type: 'email', message: '请输入正确的邮箱格式', trigger: ['blur', 'change'] }
]
}
};
},
methods: {
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert('submit');
} else {
console.log('error submit!!');
return false;
}
});
},
resetForm(formName) {
this.$refs[formName].resetFields();
}
}
};
</script>
```
以上代码实现了一个包含用户名、密码、确认密码和邮箱的表单,并使用了element-plus提供的表单组件:el-form、el-form-item、el-input和el-button。同时,我们还定义了一个rules对象作为表单校验规则,并使用validator属性添加自定义校验函数。
其中,validatePass函数为自定义的密码确认校验函数,该函数判断两次输入的密码是否一致,如果不一致则返回一个errorMessage,并使用validator属性将其添加到repassword校验规则中。使用this.$refs[formName].validate()可以触发表单校验。
这便是一个使用element-plus实现表单校验的例子。希望我的回答能够帮到你。
只用html和js制作用户注册和登录页面和密码修改页面三个页面转换
好的,我可以为您提供一个基本的示例代码,您可以在此基础上进行修改和完善。
首先是用户注册页面(register.html)的代码:
```
<!DOCTYPE html>
<html>
<head>
<title>用户注册</title>
<meta charset="utf-8">
<script type="text/javascript">
function checkForm(){
//检查表单是否填写完整
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
var repassword = document.getElementById("repassword").value;
if(username == "" || password == "" || repassword == ""){
alert("请填写完整信息!");
return false;
}
//检查两次密码是否一致
if(password != repassword){
alert("两次密码不一致!");
return false;
}
return true;
}
</script>
</head>
<body>
<h1>用户注册</h1>
<form action="register.php" method="post" onsubmit="return checkForm()">
<label for="username">用户名:</label>
<input type="text" id="username" name="username"><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password"><br>
<label for="repassword">确认密码:</label>
<input type="password" id="repassword" name="repassword"><br>
<input type="submit" value="注册">
</form>
</body>
</html>
```
接下来是登录页面(login.html)的代码:
```
<!DOCTYPE html>
<html>
<head>
<title>用户登录</title>
<meta charset="utf-8">
<script type="text/javascript">
function checkForm(){
//检查表单是否填写完整
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
if(username == "" || password == ""){
alert("请填写完整信息!");
return false;
}
return true;
}
</script>
</head>
<body>
<h1>用户登录</h1>
<form action="login.php" method="post" onsubmit="return checkForm()">
<label for="username">用户名:</label>
<input type="text" id="username" name="username"><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
```
最后是密码修改页面(change_password.html)的代码:
```
<!DOCTYPE html>
<html>
<head>
<title>修改密码</title>
<meta charset="utf-8">
<script type="text/javascript">
function checkForm(){
//检查表单是否填写完整
var oldpassword = document.getElementById("oldpassword").value;
var newpassword = document.getElementById("newpassword").value;
var renewpassword = document.getElementById("renewpassword").value;
if(oldpassword == "" || newpassword == "" || renewpassword == ""){
alert("请填写完整信息!");
return false;
}
//检查两次新密码是否一致
if(newpassword != renewpassword){
alert("两次新密码不一致!");
return false;
}
return true;
}
</script>
</head>
<body>
<h1>修改密码</h1>
<form action="change_password.php" method="post" onsubmit="return checkForm()">
<label for="oldpassword">旧密码:</label>
<input type="password" id="oldpassword" name="oldpassword"><br>
<label for="newpassword">新密码:</label>
<input type="password" id="newpassword" name="newpassword"><br>
<label for="renewpassword">确认新密码:</label>
<input type="password" id="renewpassword" name="renewpassword"><br>
<input type="submit" value="修改">
</form>
</body>
</html>
```
以上代码中,`checkForm()` 函数用于检查表单是否填写完整,以及两次输入的密码是否一致。您可以根据自己的实际需求进行修改。
另外,上述代码中的 `action` 属性值分别为 "register.php"、"login.php" 和 "change_password.php",这是用来处理表单提交的 PHP 文件,您需要自行编写这些文件来完成相应的功能。
希望这份示例代码能够对您有所帮助。
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)