2016-11-30 6 views
0
<input class="foo" type="text" /> 
<button>click</button> 

$('button').click(function(){ 
    var e = $.Event('keypress'); 
    e.which = 65; // Character 'A' 
    $('.foo').trigger(e); 
}); 

私はキーボードイベントをトリガーし、テキストを入力テキストに追加しようとします。何らかの理由でJavascriptボタンクリックトリガーキーを押してテキストを入力テキストに追加

、私は= html or text()を使用カント、私はこの問題を解決する方法を

誰でも知っているキーボードイベントをトリガしなければなりませんか?このような

+1

入力だけのために、物事が異なるように持っている[値](またはjQuerylandにしているために別の答え違う、 'val'のために) - not 'text'または' html' –

答えて

2

TRY:String.fromCharCode(e.which) .Add $(element).val() .NOでの入力に使用する要素にトリガイベント.simply負荷データを使用する必要があります。それは十分だ。

$('button').click(function(){ 
 
    var e = $.Event('keypress'); 
 
    e.which = 65; // Character 'A' 
 
    $('.foo').val(String.fromCharCode(e.which)); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input class="foo" type="text" /> 
 
<button>click</button>

contentEditable

$('button').click(function(){ 
 
    var e = $.Event('keypress'); 
 
    e.which = 65; // Character 'A' 
 
    $('.foo').text(String.fromCharCode(e.which)); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="foo" contentEditable="true" ></div> 
 
<button>click</button>

+0

contenteditable div内のテキストはどうですか? –

+0

これはkeypressイベントを引き起こさないでしょう: –

+0

また、イベントオブジェクトを作成する必要もありません。 –

関連する問題