Rolf B: jQuery .change() Method - automatisches Nachladen bei automatisierter Webseitenbestückung funktionert nicht

Beitrag lesen

Hallo Oe,

wie sieht das Stück HTML aus, wo das standardCode-Element steht? Möglicherweise ist dort ein Teil der Ursache zu finden.

Denn $("#standardCode") sucht ein Element mit id='standardCode'. Aber deine Drop_Down Methode verwendet GetElementsByName, sucht also nach Elementen mit name='standardCode'.

Letzteres wäre besser, denn wenn Du mehrere Elemente mit der gleichen ID hast wäre das ein Verstoß gegen die Regeln von HTML.

Das zweite Problem ist, dass Du die selected-Eigenschaft programmatisch setzt (ich nehme mal an, dass das <option> Elemente eines <select> sind). Programmatische Veränderungen dieser Art triggern aber keine Events; das ist Absicht. Das Event musst Du selbst auslösen.

Wie das bei einem als Webbrowser-Control in VB funktioniert - tjaaaaa. Ist das überhaupt VB oder VB.NET? Oder ist das VBA? Oder VBScript? Ich habe vor 20 Jahren mal das Webbrowser-Control mit C# eingebunden, das ist verdammt lang her. Ich meine auch, dass es da Events gibt, auf die Du lauschen kannst, d.h. Du musst keine Warteschleife machen um das Fertigstellen des Navigate abzuwarten. Es müsste ein Event geben, das nach erfolgreichem Navigate feuert. Aber das mag je nach der verwendeten VB-Geschmacksrichtung nicht möglich sein.

Für das Triggern von Change musst Du grundsätzlich die DispatchEvent-Methode des Select-Elements aufrufen und ein Change-Event mitgeben. Aber wie das in VB gemacht wird? Keine Ahnung.

Rolf

--
sumpsi - posui - obstruxi