繁体   English   中英

如何将Java脚本函数的返回值获取到在keyup上调用的变量

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM