实时文本聚焦

时间:2015-05-23 17:47:06

标签: javascript jquery

我想创建一个程序,我将在输入文本字段中键入内容,它将显示跨区域的文本字段的当前值。但问题是,当我输入第一个字符时,它什么也没有显示,当我输入另一个字符时,它显示第一个字符。但我想要完全相同的东西存在于我的文本框中。例如,

输入字段,如果类型1,它什么都不显示,那么我输入2,它显示1,但我想显示当我输入1时,它将显示1,当我输入2时,它将显示12。 / p>

from itertools import cycle, islice
def rolling_window(func, l, n):
     yield from (func(islice(cycle(l), i, n+i)) for i in range(len(l)))

4 个答案:

答案 0 :(得分:0)

你最好使用

 $("input").change(...

作为事件处理程序而不是keypress

答案 1 :(得分:0)

在没有jQuery的情况下实现非常简单。该示例使用onkeyup事件来确保它捕获最后键入的键。 onkeydown也有效,但是在问题中已经注意到了OP背后的角色。

示例 - 运行代码段以进行测试



<html>
<body>
  <input placeholder="enter some text" type="text" onKeyup="this.nextElementSibling.innerHTML = this.value">
  <span style="color: blue;"></span>
</body>
</html>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您要查找keyup事件:

$("input").on('keyup', function () {
     $("span").text(this.value);
});

答案 3 :(得分:0)

在值发生更改之前,会发生keypress事件,因此跨度设置了当时已知的值。

与其他用户提到的不同,您不能将change事件用作触发器(在操作结束时触发),因为在您从输入中删除焦点之前它可能不会触发。

使用keyup可以提供所需的行为。