老师问个课外的问题

老师问个课外的问题

value一直都是undefined,获取不到输入框的内容,求老师帮忙看一下http://img1.sycdn.imooc.com//climg/5dd1208a09dcfe4808790425.jpg

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>信息设置</title>
<link rel="stylesheet" type="text/css" href="../css/setting.css">
<link rel="stylesheet" href="../css/element-ui.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<script type="text/javascript" src="../js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../js/vue.min.js"></script>
<script src="../js/element-ui.js"></script>
</head>
<body>
<div class="main">
<div class="title">用户信息管理</div>
<div class="container">
<div v-for="(user,index) in users" class="userList">
<div class="userName"><strong>用户名:</strong>{{user.username}}</div>
<div class="passWord"><strong>密码: </strong>{{user.password}}</div>
<div class="changeBtn"><el-button type="primary" @click="change(user)" class="btn">修改密码</el-button></div>
</div>
<el-dialog title="修改密码" :visible.sync="update" width="60%">
<div class="content">
<el-form :model="form" ref="form" label-width="20%" :rules="rules" style="width: 100%;">
<el-form-item label="原密码:" prop="originalpassword">
<el-input v-model="form.originalPassword" auto-complete="off" style="width:50%" />
</el-form-item>
<el-form-item label="新密码:" prop="newpassword">
<el-input v-model="form.newPassword" auto-complete="off" style="width:50%" />
</el-form-item>
<el-form-item label="确认密码:" prop="confirmpassword">
<el-input v-model="form.confirmPassword" auto-complete="off" style="width:50%" />
</el-form-item>
</el-form>
</div>
<span slot="footer">
<el-button @click="update = false">取 消</el-button>
<el-button type="primary" @click="updatesure">确 定</el-button>
</span>
</el-dialog>
</div>
</div>
<script type="text/javascript">
new Vue({
el: '.main',
data:function() {
var validatePass = (rule, value, callback) => {
console.log(value);
if (!value) {
callback(new Error('密码不能为空'));
} else if (value !=this.users[0].password) {
callback(new Error('密码错误!'))
} else {
callback();
}
};
var validatePass1 = (rule, value, callback) => {
if (!value) {
callback(new Error('密码不能为空'));
} else if (value.toString().length < 6 || value.toString().length > 18) {
callback(new Error('密码长度为6 - 18个字符'))
} else {
callback();
}
};
var validatePass2 = (rule, value, callback) => {
               if (value === '') {
               callback(new Error('请再次输入密码'));
               } else if (value != this.form.newPassword) {
               callback(new Error('两次输入密码不一致!'));
               } else {
               callback();
               }
            };
return {
form: {
// id:'',
originalPassword:'',
newPassword:'',
confirmPassword:''
},
users:[{id:1,username:'admin',password:'123456'}],
update:false,
rules: {
originalpassword: [
             { required: true, validator: validatePass, trigger: 'blur' }
         ],
newpassword: [
                         { required: true, validator: validatePass1, trigger: 'blur' }
                     ],
                     confirmpassword: [
                         { required: true, validator: validatePass2, trigger: 'blur' }
                     ]
}
}
},
methods: {
change(user) {
this.update=true;
},
updatesure(){
var _this = this;
_this.$refs['form'].validate(function(valid) {
if(valid) {
this.update=false;
var _this=this;
$.ajax({
url:"http://127.0.0.1/user/updatePassword",    //请求的url地址
    dataType:"json",   //返回格式为json
    async:true,//请求是否异步,默认为异步,这也是ajax重要特性
    contentType:'application/json',
data:JSON.stringify(_this.form),    //参数值
    type:"post",   //请求方式
success:function(data){
_this.goods=data;
_this.$message("修改成功");
_this.getUser();
}

});
}
});
},
getUser(){
var _this=this;
$.ajax({
url:"http://127.0.0.1/user/selectRun",    //请求的url地址
    dataType:"json",   //返回格式为json
    async:true,//请求是否异步,默认为异步,这也是ajax重要特性   //参数值 
type:"get",   //请求方式
success:function(data){
_this.users=data.data;
}
});
}
},
created(){
this.getUser();
}
});
</script>
</body>
</html>


*{
	margin: 0;
	padding: 0;
}
/*修改密码整个页面的位置*/
.main{
	width: 1000px;
	/*height: 450px;*/
	margin-top: 20px;
	margin-left: 50px;
	/*border: 1px red solid;*/
}
/*页面内的标题*/
.main .title{
	
}
.userList{
	width: 100%; 
	height:100px; 
	margin-top:2%;
	/*border: 1px rgb(3,184,204) solid;*/
	line-height: 100px;
	/*border-radius: 30px;*/
}
.userList .userName{
	float: left;
	width: 25%;
	margin-left: 20px;
}
.userList .passWord{
	float: left;
	width: 25%;
}
.userList .changeBtn{
	float: left;
	width: 25%;
	text-align: right;
}
.userList .changeBtn .btn{
	background-color: rgb(3,184,204);
}
.container .content{
	margin-left: 10%;
	width: 100%;
}


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,代码中单词大小写不一致:

http://img1.sycdn.imooc.com//climg/5dd1344909a104e211110398.jpg

和prop属性值应该一样,要细心一些。

建议同学遇到问题多独立思考一下,以后工作中遇到问题不可能全部都会问同事或者其他人,要培养自己解决问题的能力。还有这一部分代码老师可以测试,如果遇到多的,不能测试的,老师也帮不到你了。加油~

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师