javascript - 如何在开始输入后清空输入字段

标签 javascript mootools textinput onkeyup

我正在尝试制作一个输入框,一旦您开始输入,输入框就会变空。 (不是重点)。我尝试在 mootools 上使用 keyup 事件,但流程不是无缝的。删除输入字段需要一些时间。这是代码

document.addEvent('domready', function(e) {
$('inputBox').addEvent('keyup', function() {
    if(inputBox.value != inputBox.defaultValue){
        inputBox.value = '';
        $('inputBox').removeEvents('keyup');    
    }
});
});

什么是最好的方法来让它表现得更好?

最佳答案

正如 Remon 所说,你可以绑定(bind)到一个按键事件,你不会有任何延迟,但是你不能与默认值进行比较,因为当按下键时,该值将相同(一旦你拿起 key ,值(value)就会改变)。

这将是带有 keydown 的代码:

document.addEvent('domready', function(e) {
    $('inputBox').addEvent('keydown', function() {
        this.set('value', '').removeEvents('keydown');
    });
});

如果您想像在初始代码中那样进行比较,那么您将需要使用 keyup,但它会有一小段延迟。

这是您的代码,经过一些优化并可以正常工作:

document.addEvent('domready', function(e) {
    $('inputBox').addEvent('keyup', function(ev) {
        if(this.value != this.defaultValue){
            this.set('value', ev.key).removeEvents('keyup');
        }
    });
});​

我希望这能回答你的问题:)

关于javascript - 如何在开始输入后清空输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9749166/

相关文章:

python - 如何改变CharField的大小

javascript - 使 Discord 机器人命令不区分大小写?

javascript - 当表单无效时, Angular 验证呈现 ng-valid

javascript - Angular/Ionic - 如何有效保存登录信息

javascript - Mootools 期刊问题

javascript - Mootools 日期选择器的可用性

JavaScript 对象和方法,但 getName 不是函数

html - MooTools - 如何使用 getSelected()

html - 带有下拉菜单的 Twitter Bootstrap 内联输入

javascript - 如何控制 React Native 的 <TextInput> 的 defaultValue?