var a = false number.onblur = function () { var res2 = obj.number.reg.test(this.value) if (!res2) { number.nextElementSibling.innerHTML = '手机号格式不正确' } else { number.nextElementSibling.innerHTML = '√' } a = res2 }
时间: 2024-02-10 09:04:30 浏览: 65
你的代码片段中,我们可以看到一个匿名函数被赋值给了 `number.onblur`。这个函数在输入框失去焦点时会被调用。代码中使用了一个正则表达式 `obj.number.reg` 来验证手机号码的格式是否正确,如果验证通过,则给输入框的下一个元素设置内容为 "√";如果验证不通过,则给输入框的下一个元素设置内容为 "手机号格式不正确"。最后,将验证结果保存到变量 `a` 中。这个变量可能在后续的代码中被使用。
相关问题
number.onblur = function () { var res2 = obj.number.reg.test(this.value) if (!res2) { number.nextElementSibling.innerHTML = '手机号格式不正确' } else { number.nextElementSibling.innerHTML = '√' } return res2 } 怎么在外面拿到里面return的值
可以在外部定义一个变量来存储`onblur`事件处理函数中的返回值,然后在需要使用这个返回值的地方调用该变量即可。例如:
```javascript
let isNumberValid = false; // 定义一个变量来存储返回值
number.onblur = function () {
var res2 = obj.number.reg.test(this.value);
if (!res2) {
number.nextElementSibling.innerHTML = '手机号格式不正确';
} else {
number.nextElementSibling.innerHTML = '√';
}
isNumberValid = res2; // 将返回值存储在变量中
return res2;
}
// 在需要使用返回值的地方调用变量
if (isNumberValid) {
// do something
} else {
// do something else
}
```
查找错误点<script> var mcText = document.querySelector(`.mcText`) var accountedText = document.querySelector('.accountedText') var passwordText = document.querySelector('.passwordText') var registerDiv = document.querySelector('.registerDiv') var isAgree = false; //注册按钮的点击事件 registerDiv.onclick = function () { if(isAgree == true){ // history.back() var ajax = new XMLHttpRequest() var string = "mc="+mcText.value+"username="+accoundedText.value+'&password='+passwordText.value; ajax.open('get','http://localhost:8080/registUser?'+string) ajax.send() } else { alert("请输入名称账号密码") } } ajax.onload = function (){ console.log(ajax.responseText); } //监听这三个输入框失去焦点 mcText.onblur = function (){ isAgree = isAgreeLogin(); } accountedText.onblur = function (){ isAgree = isAgreeLogin(); } passwordText.onblur = function (){ isAgree = isAgreeLogin(); } //在失去焦点的时候,判断三个输入框是否都有值了,如果有则高亮显示,如果无则不亮 function isAgreeLogin() { if(mcText.value !='' && accountedText.value != ''&& passwordText.value != ''){ registerDiv.style.backgroundColor = "#648ceb" registerDiv.style.boxShadow = "2px 2px 2px #9eb8f6" return true } else { return false } } </script>
您的代码中应该把 `var ajax = new XMLHttpRequest()` 放到 `registerDiv.onclick` 的函数体内部,否则会造成 ajax 未定义的错误。
正确的代码应该是这样的:
```
var mcText = document.querySelector(`.mcText`);
var accountedText = document.querySelector('.accountedText');
var passwordText = document.querySelector('.passwordText');
var registerDiv = document.querySelector('.registerDiv');
var isAgree = false;
registerDiv.onclick = function () {
if (isAgree == true) {
var ajax = new XMLHttpRequest(); // 将此行代码放到函数体内部
var string = "mc=" + mcText.value + "username=" + accountedText.value + '&password=' + passwordText.value;
ajax.open('get', 'http://localhost:8080/registUser?' + string);
ajax.send();
} else {
alert("请输入名称账号密码");
}
}
ajax.onload = function () {
console.log(ajax.responseText);
}
mcText.onblur = function () {
isAgree = isAgreeLogin();
}
accountedText.onblur = function () {
isAgree = isAgreeLogin();
}
passwordText.onblur = function () {
isAgree = isAgreeLogin();
}
function isAgreeLogin() {
if (mcText.value != '' && accountedText.value != '' && passwordText.value != '') {
registerDiv.style.backgroundColor = "#648ceb";
registerDiv.style.boxShadow = "2px 2px 2px #9eb8f6";
return true;
} else {
return false;
}
}
```
请注意,这只是一种可能的解决方案。如果问题仍然存在,请提供更多上下文信息和完整的代码,以便我更好地帮助您。
阅读全文