обнаружить вставку на поле ввода - PullRequest
12 голосов
/ 21 октября 2009

У меня есть поле ввода. Когда страница загружается, я использую мышь, чтобы щелкнуть правой кнопкой мыши на поле ввода и выбрать вставить из контекстного меню.

когда текст вставляется, какое событие использовать для мгновенного оповещения текста, как только происходит вставка?

я использую «input paste», но не работаю в IE

Ответы [ 4 ]

44 голосов
/ 21 октября 2009

Вы можете связать эти события так:

    $(document).ready(function() {
        $("#Text1").bind('copy', function(e) {
            alert('copying text!');
        });
        $("#Text1").bind('paste', function(e) {
            alert('pasting text!');
        });
        $("#Text1").bind('cut', function(e) {
            alert('cut text!');
        });
    });
0 голосов
/ 02 октября 2011

Теперь есть лучший способ. Все же не все браузеры поддерживают этот 2011 год, но это изменится

обработчик события oninput

исправления на входе

больше исправлений

и другие кроссбраузерные решения jquery

0 голосов
/ 21 октября 2009

Хак, который работал бы большую часть времени, заключался бы в подключении к onchange элемента управления и сохранению исходного текста элемента управления в отдельной переменной. Каждый раз, когда длина нового текста превышает исходный текст более чем на один символ, можно предположить, что что-то вставлено. Очевидно, что это не сработает, если кто-то вставит односимвольную строку, но люди этого не делают. делайте это очень часто.

0 голосов
/ 21 октября 2009

Было установлено действие с setInterval (функция javascript), который каждые 200 мс проверяет содержимое ввода. Если оно изменилось, то произошло прошлое или набор текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...