Hallo zusammen,
nachdem ich jetzt viel im Netz gesucht habe, aber nichts geholfen hat, frage ich mal wieder hier.
ich habe folgendes Input Element:
<input type="text" onblur="h127(this);" onfocus="h7(this);" onkeydown="h142(event);" onchange="h3();" cid="96" id="e227" maxlength="13" "="" value="0.0" tabindex="334">
Hier muß ich einen neuen Wert hineinschreiben. Mit send_keys habe ich schon sehr viel ausprobiert. Jetzt möchte ich das ganze gerne mal anders angehen.
my $script = q{
arguments[0].setAttribute(arguments[1], arguments[2]);
};
$main::driver->execute_script($script, $element, $attribut, $wert);
Damit kann ich zuverlässig neue Werte schreiben. Das $element auf ein falsches Element zeigt kann ich ausschließen, da ich auf dem Bildschim den neuen Wert aus $wert sehe. Jetzt fehlt "nur" noch das auslösen des Events, was mir einfach nicht gelingen will. Folgenden JS-Code habe ich, einzeln und nacheinander, versucht via execute_script auszuführen:
document.dispatchEvent(arguments[0]);
document.arguments[0].onchange();
arguments[0].onchange();
arguments[0].fireEvent(arguments[1]);
arguments[0].trigger('change');
arguments[0].dispatchEvent("onchange");
arguments[0].setAttribute('onchange', 'changeitem(this)');
Je nachdem was davon ich ausprobiere, erhalte ich andere Fehlermeldungen, oder wie z.B. bei "arguments[0].setAttribute('onchange', 'changeitem(this)');" einfach nichts.
Danke
<update>14:50 Frage jetzt auch auf Stackoverflow</update>
Last edited: 2015-10-28 14:50:44 +0100 (CET)
Roland
--
"Steh vorn, während du fragst;
sitzen soll, wer antwortet."
Aus "Die Edda des Snorri Sturluson" "Gylfis Täuschung" Strophe 2