我们如何从 jquery 中的 keyup 获取值

How can we get val from keyup in jquery

我想在 jquery

中通过 keyup 给出 val

我的代码是:

var vartest;

$( ".target" ).keyup(function() {
  vartest= this.value;
console.log('in func:' + vartest);
});


console.log('out of func:' + vartest);

但 vartest 未定义

我不确定这是否是你需要的,但如果你想获得事件发生的输入值,你应该从事件目标中获取它:

$(‘.target’).keyup(e => {
    vartest = e.target.value;
});

您的函数仅在您的元素收到事件后触发。
在您调用 vartest(在您的函数之外)时,它的值仍然是 undefined,因为该事件(实际上附加了一个值)将在稍后触发。

创建函数 getTargetsValues 并在需要时调用该函数。
而不是 "keyup" 最终可能会 监听 "input" 事件:

// Cache your elements
const $targets = $(".target");

// Use this function to get an Array of inputs .target values
function getTargetsValues () {
  return $targets.get().map(el => el.value);
}

$targets.on("input", function() {
  console.log('in func: ' + getTargetsValues());
});

console.log('out of func: ' + getTargetsValues());
<input class="target" type="text" value="1. target">

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>