I have a problem regarding filling out an input field with JavaScript.
The reson i try using javascript for this, is i want my flutter android app to open the website as an webview and fill out the input fields.
For testing i run my javascript code in chrome as a script snippet.
I am trying to fill out the input fields of this Webseite :
https://topup.klarna.com/stw_dusseldorf,
but if i use
document.getElementById("cs-card-number").value = "12345";
the change goes away if i interact with the website;
I tried triggering the input Event, but it did not work either.
I even tried recreating the same input event as it would be triggered if i manuly typ something in
var event = new InputEvent('input');
event.value = "1";
//event.isTrusted = true
//Object.defineProperty(event, 'isTrusted', {writable: false, value: true});
Object.defineProperty(event, 'bubbles', {writable: false, value: true});
Object.defineProperty(event, 'cancelBubble', {writable: false, value: false});
Object.defineProperty(event, 'cancelable', {writable: false, value: false});
Object.defineProperty(event, 'composed', {writable: false, value: true});
Object.defineProperty(event, 'currentTarget', {writable: false, value: document});
Object.defineProperty(event, 'data', {writable: false, value: "1"});
Object.defineProperty(event, 'dataTransfer', {writable: false, value: null});
Object.defineProperty(event, 'defaultPrevented', {writable: false, value: false});
Object.defineProperty(event, 'detail', {writable: false, value: 0});
Object.defineProperty(event, 'eventPhase', {writable: false, value: 3});
Object.defineProperty(event, 'inputType', {writable: false, value: "insertText"});
Object.defineProperty(event, 'isComposing', {writable: false, value: false});
Object.defineProperty(event, 'path', {writable: false, value: [$("input#cs-card-number-confirm"), $("div#cs-card-number-confirm__text-wrapper"), $("div#cs-card-number-confirm__container"), $("label"), $("div#cs-card-number-confirm__root"), $("div"), $("div.sc-keyyzf.glhkcc"), $("div.sc-fjdhpx.huktqi"), $("div.sc-iwskbi.hwpiky"), $("div.sc-brqgnp.doeca"), $("div.sc-jwbwvp.efkmfx"), $("div#root"), $("body"), $("html"), document, Window]});
Object.defineProperty(event, 'returnValue', {writable: false, value: true});
Object.defineProperty(event, 'sourceCapabilities', {writable: false, value: null});
Object.defineProperty(event, 'srcElement', {writable: false, value: ele});
Object.defineProperty(event, 'target', {writable: false, value: ele});
event.type= "input"
document.dispatchEvent(event);
Also have tried using
document.getElementById("cs-card-number").setAttribute("value", "1234");
I am out of ideas how to do this. If somebody knew how to do this, it would be a great help.