В JQuery Как работать с пастой?

Возможные дубликаты:
Как вы обрабатываете oncut, oncopy и onpaste в jQuery?
jQuery catch paste ввод

У меня есть текстовое поле, при вставке в это текстовое поле я хочу

  1. формат вставки значений
  2. добавить в текстовое поле

можно ли это сделать в Javascript?


person Njax3SmmM2x2a0Zf7Hpd    schedule 23.08.2011    source источник


Ответы (1)


В современных браузерах есть событие onpaste:

$("#textareaid").bind("paste", function(){});

Проблема с событием, он сообщает вам, что оно вот-вот произойдет, но не дает вам того, что вставляет пользователь. JavaScript ограничил доступ к буферу обмена и по умолчанию отключен. Если доступ разрешен, вы можете читать данные буфера обмена и затем манипулировать ими.

person epascarello    schedule 23.08.2011
comment
Разве e.target.value не сообщает вам, что вставляет пользователь? - person jobmo; 15.02.2017
comment
@jobmo Что ж, за 6 лет, когда на этот вопрос был дан ответ, немного изменилось. Вы получаете то, что было вставлено с помощью event.clipboardData. Чтение значения даст вам все содержимое текстового поля. - person epascarello; 15.02.2017
comment
e.target.value не обязательно содержит значение. Вам может понадобиться setTimeout stackoverflow.com/a/1503425/577052 - person Bernhard Döbler; 30.05.2018
comment
event.clipboardData не существует в IE11 - person Bernhard Döbler; 30.05.2018