2016-09-06 5 views
3

Я пытаюсь вызвать событие вставки в textarea с помощью jQuery, но эта тема для меня совершенно новая.Как вручную запустить событие вставки в текстовой области с определенным текстом

Я видел, как можно вручную вызвать KeyDown события, имитирующее нажатие определенной клавиши, как это:

var e = $.Event("keydown") 
e.which = 50 
$('#textarea1').trigger(e) 

Но как я могу вручную запустить событие вставки с помощью предоставленной строкой текста, который эффективно имитируется Ctrl + V или щелкните правой кнопкой мыши> вставить строку типа «Foobar»?

Я попытался просто установить значение textarea, но это не вызывает событие вставки.

EDIT:

Я также попытался это (для имитации Ctrl + V), но не повезло (ref):

e = $.Event("keydown");   
e.which = 86; // 'V' key 
e.ctrlKey = true; 
$("input").trigger(e); 
+0

Не можете ли вы просто установить значение? – Rayon

+1

Я пробовал это, но это не вызывает событие вставки. – Submits

+0

@ Gothdo вы уверены? https://developer.mozilla.org/en-US/docs/Web/Events – Submits

ответ

-5

Вот решение, вы можете попробовать:

$('body').on('paste',function(e) { 
    e.preventDefault(); 
    var text = (e.originalEvent || e).clipboardData.getData('text/plain'); 
    alert(text); 
}); 
+0

Это будет LISTEN для события вставки, не так ли? Мне нужно TRIGGER вставить событие. – Submits

+0

http://stackoverflow.com/questions/2903991/how-to-detect-ctrlv-ctrlc-using-javascript – Vladimir

+1

Да, эта ссылка не отвечает на мой вопрос, к сожалению. Мне не нужно обнаруживать Ctrl + V, мне нужно вызвать Ctrl + V через JavaScript. – Submits

 Смежные вопросы

  • Нет связанных вопросов^_^