javascript - 有没有办法捕获对文本区域的更改?

标签 javascript jquery

这是我现在正在做的事情

$("#text").on("input", function(event){

    console.log("The changes are:" + SomeDataThatIDontKnowHowToAccess);

});

我意识到这可能会破坏退格键/粘贴文本/插入/删除。我真的不知道如何处理,可能有删除/插入/覆盖事件……我宁愿不推出自己的解决方案。

一个例子

用户在空白文本区域粘贴东西

{eventType:'insert', value:'something'}

显示在控制台中

最佳答案

将旧值写入某个您可以坚持关注的地方。然后你可以在change事件中使用你自己的逻辑来找出旧值和新值之间的差异

$('#text').on('focus', function () {
    //THIS LINE IS INCORRECT [what was wrong with my fiddle]... assignment is parameter *doh*
    //$(this).data('oldValue') = $(this).val();
    //THIS IS THE CORRECT LINE
    $(this).data('oldValue', $(this).val());
}).on('change', function() {
    alert('Old Value: ' + $(this).data('oldValue') + '\nNew Value: ' + $(this).val());
});

你的 fiddle :http://jsfiddle.net/BLSully/jqbAr/1/ [已修复]

关于javascript - 有没有办法捕获对文本区域的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12589637/

相关文章:

javascript - 使用 Doctype 让 scrollTop 返回 0,为什么?

javascript - Uncaught TypeError : Cannot read property 'xxxx' of undefined, 但已定义

jquery - glDatepicker 在日历下方获取输入

javascript - Android WebView JavaScript onClick 错误

javascript - HTML5 桌面通知(最好是 Angular)

javascript - 一次通话可提供两种不同的内容类型

javascript - 按下回车键时不刷新页面

javascript - 页面加载顺序有问题 - 样式不适用

jquery - Chrome 中大图像的淡入淡出

javascript - 修改后加载文件