希望的效果:在修改密码时,对密码进行判断,不符合,进行提示,页面不会进行刷新;所遇问题:进行提示,页面进行了刷新。
方法一:通过使用return false;并不能达到效果,在点击事件中使用return Confirm(this)
达到预期。
return false 只在当前函数有效,不会影响其他外部函数的执行。
<button class="primary" onclick=" return Confirm(this)">确认</button>
function Confirm() {
let originalUserName = $("#originalUserName").val();
let originalPw = $("#originalPw").val();
let newPw = $("#newPw").val();
let newPwAgain = $("#newPwAgain").val();
if (!(originalUserName && originalPw && newPw && newPwAgain)) {
$.showMessage({
message: "必填项为空!",
type: $.MessageType.Error});
return false;
}
if (newPw != newPwAgain) {
$.showMessage({
message: "两次输入的密码不一致!",
type: 'Info'});
return false;
}
}
方法二:通过查看代码发现<button class="primary" onclick=" Confirm()">确认</button>
这行代码出现在了form表单里,通过修改<button class="primary" onclick=" Confirm(event)">确认</button>
在Confirm
这个方法中添加阻止默认事件e.preventDefault()
,也可以达到效果。