我试图编写一个小脚本,因此每当用户在网页上输入一些文字时,它就会立即获得价值。不幸的是,当我尝试测试时,Keyup()JQUERY函数没有返回任何值。
$(document).ready(function() {
$(document).keyup(function() {
var command = $(this).val();
alert(command);
});
});
警报显示没有任何文字,我不确定为什么?
答案 0 :(得分:4)
您的选择器为$(document)
,没有任何价值
只有当您的选择器是任何输入时,您才能获得价值
如果您想按用户获取字符类型,请按照以下步骤进行尝试
$(document).keyup(function(e) {
var command = String.fromCharCode(e.which);
alert(command);
});
答案 1 :(得分:2)
试试这段代码。
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
$("input").keyup(function() {
var command = $(this).val();
alert(command);
});
});
</script>
<input type="text">
</body>
</html>
答案 2 :(得分:0)
我修改了代码段
$(document).ready(function() {
$(document).keyup(function(e) {
var command = $(e.target).val()
alert(command);
});
});
$(this)始终保留在您绑定事件的位置,即您的案例中的文档,但e.target提供您正在使用事件的当前元素。
答案 3 :(得分:-1)
有多种方法可以修复它。这就像双向绑定。
您可以使用jquery
另外,您可以选择内置双向绑定功能的AngularJS。