如何从输入字段中检索文本,因为它在JavaScript中输入?

Mo.*_*Mo. 4 javascript

如何使用JavaScript输入输入字段的内容?

我知道.onChange只有在从输入字段改变焦点后才能工作吗?

谢谢

And*_*y E 10

编辑:自从写完这个答案后,我了解到HTML5 oninput事件比关键事件更合适,因为它会检测所有形式的输入,包括粘贴,拖放等.除了IE 8和IE 8之外的所有主流浏览器都支持该事件.较低,但您可以通过映射来模拟IE中的事件onpropertychange.例:

if ("onpropertychange" in myInput && !("oninput" in myInput)) {
    myInput.onpropertychange = function () {
        if (event.propertyName == "value") 
            myHandler.call(this, event);
    }
}
else
    myInput.oninput = myHandler;
Run Code Online (Sandbox Code Playgroud)

请注意,onpropertychange在使用contentEditable属性集输入非表单元素时不会触发.


onkeyup只有解除密钥才会触发,因此为了获得最佳效果,请使用onkeypress和/或onkeydown.如果使用延迟为0ms的计时器,则可以在更新后立即获取新值:

myInput.onkeydown = function () {
    var self = this;
    window.setTimeout(function () {
        alert(self.value);
    },0);
} 
Run Code Online (Sandbox Code Playgroud)

示例:http://jsfiddle.net/fgcYD/

请注意,这不会捕获粘贴或将文本拖放到框中.对于那些你需要其他活动的人.