我试图简单地返回输入到输入字段中的值。
我想使用jQuery访问值,存储到变量,并从被调用的函数返回。
这是我的HTML:
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css"/>
<script language = "javascript" type = "text/javascript" src="jquery-2.1.1.js"> </script>
<script language = "javascript" type = "text/javascript" src = "Database.js"></script>
</head>
<body>
<div id="wrapper">
<input type ="text" id="input"/></br>
<input type="button" id="insert"/>
</div>
</body>
</html>
这是我的Javascript:
$(document).ready(function() {
var toSubmit = function() {
var text = $("#input").val();
return text;
};
var enterPressed = function() {
$('#input').keyup(function(button) {
if(button.keyCode==13) {
toSubmit();
}
};
function enterPressed();
});
我还没有使用按钮的功能,请忽略它。
当我在Chrome的Javascript控制台中运行此操作时,我得到第15行的“意外令牌功能”。我是否错误地调用了该功能?
我想让程序做的就是在用户按下回车键后立即返回输入框的值。
更新
HTML:
$(document).ready(function() {
var toSubmit = function() {
var text = $("#input").val();
return text;
};
var enterPressed = function() {
$('#input').keyup(function(button) {
if(button.keyCode==13) {
toSubmit();
}
});
};
enterPressed();
});
使用Javascript:
$(document).ready(function() {
var values = [];
var toSubmit = function() {
var text = $("#input").val();
values.push(text);
console.log(values);
return false;
};
var formSubmit = function(e) {
$('#form').submit(toSubmit);
};
});
答案 0 :(得分:3)
正如@DontVoteMeDown在评论中所说,function enterPressed();
是语法错误,您忘记关闭enterPressed
。您也忘了用keyup
关闭});
。我已经更正了此代码中的错误:
编辑:已更改为event.which
而不是event.keyCode
(which
normalizes keyCode
and charCode
)。
$(document).ready(function() {
var toSubmit = function() {
var text = $("#input").val();
return text;
};
var enterPressed = function() {
$('#input').keyup(function(event) {
if(event.which == 13) {
toSubmit();
}
});
};
enterPressed();
});
使用jsFiddle示例:http://jsfiddle.net/D66Zw/1/
<强>更新强>
如果可以的话,如果你只是听一个表格的submit
事件会更好。这样你就可以调用toSubmit
,它将处理按下回车键和提交按钮。这是你如何做到的:
<强> JavaScript的:强>
$(document).ready(function() {
var toSubmit = function(e) {
var text = $("#input").val();
// do whatever you want to do with 'text' variable here
// stop form from submitting
e.preventDefault();
return false;
};
var formSubmit = function() {
$('#form').submit(toSubmit);
};
// call this when you want to bind the submit handler
formSubmit();
});
<强> HTML:强>
<form id="form">
<input type ="text" id="input"/><br />
<input type="submit" id="insert"/>
</form>
新的jsFiddle示例,点击提交按钮并按回车工作:http://jsfiddle.net/D66Zw/2/
将值推送到数组
在toSubmit
函数之前,创建数组:
var list = [];
在toSubmit
函数中:
// push text to array
list.push(text);
// output array in console
console.log(list);
jsFiddle:http://jsfiddle.net/D66Zw/4/(打开控制台,每按一次输入就看到数组)