| |

VB.NET - Fortgeschrittenemshtml InnerHTML setzen Radio/CheckButtons funktionieren nicht mehr | |  | Autor: MX82 | Datum: 29.07.12 22:31 |
| Hallo!
Ich bin neu hier und schon ziemlich verzweifelt.
Ich programmiere eigentlich schon einige Jährchen stehe aber nun vor einem merkwürdigen Problem.
Ich kontrolliere/steuere Webseiten mittels VB.net mit mshtml, also verändere die innerHTML einer Webseite nach meinen Bedürfnissen.
Soweit so gut, funktioniert alles, nun stehe ich aber vor einem Problem dass ich leider auch nicht über Google finden konnte, deshalb hoffe ich dass Ihr mir hier weiterhelfen könnte.
Hier ein ganz simpler Code der die innerHTML "verändert".
Private Withevents g_HtmlDocument As mshtml.HTMLDocument
g_HtmlDocument.body.innerHTML = g_HtmlDocument.body.innerHTML
Also dieser Code kann eigentlich gar nichts, er ändert nicht mal etwas die Webseite bleibt komplett ident.
Es gibt allerdings Webseiten bei denen nach diesem Code (der im Prinzip nichts verändert) die Checkboxen/Radiobuttons und einige Links nicht mehr funktionieren. Sie lassen sich durch den User nicht mehr anwählen.
Wenn z.B.: eine Checkbox das Häckchen hatte, kann man es nach dem Code nicht mehr entfernen, man klickt darauf aber es passiert rein gar nichts.
Mittels VB.net kann ich aber z.B.: onclick bzw. alle anderen Events von der Checkbox abrufen, das wird erkannt.
Wenn ich mittels VB.net die Checkbox verändern möchte mittels .checked=true/false funktioniert dies auch nicht, im Internet Explorer sieht man einfach nichts das sich etwas geändert hat. Wenn ich die checked Eigenschaft der Checkbox abfragen hat dieses aber den korrekten Wert (true oder false) nur eben im IE Explorer sieht man nichts.
Kennt jemand das Problem?
Auch bei Radiobuttons und einigen Links habe ich das selbe Problem.
Ich habe mir mal den HTML Code von so einer checkbox rauskopiert, hier:
"<TD colSpan=11><INPUT id=auftragcheckAll class="chkbox-style styled difclass-inp chooseall ui-helper-hidden-accessible" name=auftragcheckAll value=0 type=checkbox jQuery1509139819579090643="16"><SPAN style="MARGIN: 0px 5px 0px 0px" class=ui-checkbox jQuery1509139819579090643="17"></SPAN>"
Das ist so eine die nicht mehr funktioniert nach dem Code:
g_HtmlDocument.body.innerHTML = g_HtmlDocument.body.innerHTML
Dieser Code hat eigentlich 0 Sinn soll aber das Problem veranschaulichen!
Ich habe schon alles versucht ich schaffe es einfach nicht, sobald ich irgendetwas an der innerHTML verändere geht nix mehr.
Wenn ich allerdings Code mittels: g_HtmlDocument.body.insertAdjacentHTML einfüge, gibt es keine Probleme, allerdings genügt mit diese Funktion nicht ich muss die innerHTML verändern.
Ich hoffe es kann mir jemand weiterhelfen schlage mich seit Tagen mit diesem Problem herum.
P.S.: Kann leider die Webseite nicht posten bei der es auftritt da man eingeloggt sein muss um dahin zu kommen, hoffe der obige HTML Code genügt.
Was mir aufgefallen ist die Checkbox ist keine gewöhnliche, scheinbar befindet sich eine unsichtbare normale im Hintergrund und die im IE Explorer angezeigt wird sieht etwas "edler" aus. Kenne mich bei HTML leider nicht so sehr aus, aber wie gesagt oben ist der HTML Code dazu... |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
TOP! Unser Nr. 1 
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|