Jac*_*hor 3 javascript jquery events return onblur
目标:用户关注输入字段。用户在输入字段中写入一个值。当用户完成并且输入字段不再处于焦点时,将插入的值保存到名为“inputFieldValue”的变量中。这应该通过调用函数“returnInputValue”来完成。
html
<!DOCTYPE html>
<html>
<head>
<title>My test</title>
</head>
<body>
<input class="input" />
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="test.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
测试.js
function returnInputValue() {
var inputValue;
$('.input').blur(function() {
inputValue = $('.input').val();
});
return inputValue;
}
var inputFieldValue = returnInputValue();
Run Code Online (Sandbox Code Playgroud)
当我在插入一个值并再次聚焦后从控制台调用变量 inputFieldValue 变量时,它仍然是“未定义”。
我错过了什么吗?
您执行的函数是异步函数,即它基于input
触发blur
事件后的时间。您需要在blur
事件中返回它:
function returnInputValue() {
var inputValue;
$('.input').blur(function() {
inputValue = $('.input').val();
return inputValue;
});
}
Run Code Online (Sandbox Code Playgroud)
正如一些人所建议的那样,即使上面的代码也不正确。该inputValue
不会,因为它总是返回工作undefined
。
或者,将其设置为直接访问最后一个blur
红色值。
var inputValue = "Not Blurred Yet!";
$('.input').blur(function() {
inputValue = $('.input').val();
});
function returnInputValue() {
return inputValue;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6099 次 |
最近记录: |