如何检测文本框的内容已经改变?

  • 回答 (2)
  • 关注 (0)
  • 查看 (56)

我想要检测一个文本框的内容已经改变。我可以使用键控方法,但是也会检测不生成字母的按键,如箭头键。我想到了两种使用keyup事件的方法:

如果按下的密钥的ASCII码是一个字母\ backspace \ delete,则明确检查

使用闭包记住键击前文本框中的文本,并检查是否已经更改。

两个看起来有点麻烦。

思潮澎湃思潮澎湃提问于
秋之夕颜清念念不忘,必有回响回答于

HTML /标准JavaScript中使用onchange事件。

在jQuery中是change()事件。例如:

$('element').change(function() { // do something } );

编辑

看完一些评论后,又该如何呢?

$(function() {
    var content = $('#myContent').val();
    $('#myContent').keyup(function() { 
        if ($('#myContent').val() != content) {
            content = $('#myContent').val();
            alert('Content has been changed');
        }
    });
});
akjok54stay hungry stay foolish回答于

开始观察“输入”事件而不是“更改”。

jQuery('#some_text_box').on('input', function() {
    // do your stuff
});

...这是很好,干净,但可以进一步扩展到:

jQuery('#some_text_box').on('input propertychange paste', function() {
    // do your stuff
});

所属标签

可能回答问题的人

  • 西风

    renzha.net · 站长 (已认证)

    9 粉丝1 提问5 回答
  • uncle_light

    5 粉丝518 提问3 回答
  • 学生

    2 粉丝477 提问3 回答
  • 军哥

    重庆雷驰信息技术有限公司 · 经理 (已认证)

    5 粉丝1 提问3 回答

扫码关注云+社区

领取腾讯云代金券