Ich brauche dispatch KeyPress innerhalb eines Eingabefeld auszulösen oder zu sagen, ich viel mit „initKeyboardEvent“, „initKeyEvent“, "versucht haben, createEvent ", sogar ich fand ähnliche Frage Antworten, aber nichts scheint zu funktionieren, weder in Firefox, noch in Chrom (ich denke, sie können veraltet sein), wie KeyboardEvent.initKeyEvent(), ist veraltet.Javascript dispatch Keypress, true zurück, aber Eingabefeld ist immer noch leer
wie wir
document.getElemntByID('button').click();
haben Ich möchte wie etwas tun:
document.getElemntById('email').keyPress(charCode('a'));
aber leider bin ich keypress Arbeit in irgendeiner Weise zu machen nicht in der Lage.
Ich weiß, dass es in jQuery möglich ist, aber ich möchte es in reinem Javascript tun, nachdem alle jquery Javascript im Backend verwendet, so muss es einen Weg geben, wenn ich nicht falsch liege.
==== aktualisieren =========
Ich frage mich
window.addEventListener('keydown', keyDown(), true);
function keyDown(){
alert('keydown');
}
var fireOnThis = document.getElementById('pwph');
if(window.KeyEvent) {
var evObj = document.createEvent('KeyEvents');
evObj.initKeyEvent('keydown', true, true, window, false, false, false, false, 72, 0);
} else {
var evObj = document.createEvent('UIEvents');
evObj.initUIEvent('keydown', true, true, window, 1);
evObj.keyCode = 72;
}
fireOnThis.dispatchEvent(evObj);
Dieser Code gibt mir wahr, und auch die eventListner dieses Ereignis holt, dann warum bin ich nicht in der Lage um irgendeinen Text im Eingabefeld zu sehen? ==================== Update ============================
Das scheint für jeden zu funktionieren, aber warum lässt es mein Textfeld leer, selbst wenn es wahr ist?
// Create the event
var evt = document.createEvent('KeyboardEvent');
// Init the options
evt.initKeyEvent(
"keypress", // the kind of event
true, // boolean "can it bubble?"
true, // boolean "can it be cancelled?"
null, // specifies the view context (usually window or null)
false, // boolean "Ctrl key?"
false, // boolean "Alt key?"
false, // Boolean "Shift key?"
false, // Boolean "Meta key?"
9, // the keyCode
0); // the charCode
// Dispatch the event on the element
el.dispatchEvent(evt);
'charCode (‚a‘)' die Funktion aufrufen ... Sie müssen Funktionsausdruck passieren ... – Rayon
Wie wäre es das 'onkeydown' Ereignis in das DOM Element hinzufügen? Wie: '' – Jerry
Mögliche Duplikat [KeyPress Ereignis aufrufen, ohne tatsächlich Drücken der Taste] (http://stackoverflow.com/questions/10514123/invoking-keypress-event -ohne-tatsächlich-drückende-Taste) – Boratzan