[英]How to get the return value of a java-script function to a variable which is called on keyup
我真的是javascript新手。 我正在尝试为我的项目创建一个自动加载文本框。 我想在keyup事件中调用函数时将javascript函数的返回值获取到变量。 我怎样才能做到这一点。
<input id="autocomplete" onkeyup="myFunction()">
<script>
var abc = "";
function myFunction() {
var keywordx = document.getElementById("autocomplete").value;
abc = keywordx;
}
console.log(abc);// abc should have the typed values in the
</ script>
**EDITED
尝试这个:
<input id="autocomplete" onkeyup="myFunction()" onchange="showIt()">
function showIt() {
console.log(abc);
}
这将等到您完成对字段的编辑之后再尝试使用abc
。
试试这个代码
<input id="autocomplete" onkeyup="myFunction()">
<input type='button' id='temp' onclick='getText()' value='Get Text'>
<script>
var abc = "";
function myFunction() {
var keywordx = document.getElementById("autocomplete").value;
abc = keywordx;
}
function getText() {
console.log(abc);
}
</script>
下面的代码应该可以解决您的问题。 无需在函数外部创建变量。 只需传递一个变量作为值并在每个onkeyup事件中将其重置即可使其简单。
function myFunction() {
var x = document.getElementById("autocompleted").value;
console.log(x)
}
更优雅的解决方案将是这样
var autocomplete = document.querySelector('#autocomplete'); autocomplete.onkeyup = function(e) { alert(e.target.value); //e.target.value is value of input //console.log or use it }
<input id="autocomplete">
我建议使用“隐藏文件”而不是全局变量。
您可以使用jQuery实现相同的功能
<input id="autocomplete" onkeyup="myFunction()">
<input type="hidden" id="someFlag" />
<script>
$('#autocomplete').keyup(function () {
$('#someFlag').val($('#autocomplete').val());
console.log($('#someFlag').val());
})
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.