• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Nach bestimmten Daten in einer HMTL Seite suchen

rene555

Neues Mitglied
Hi,
ich hoffe das ich in dem richtigen Forum schreibe, ansonsten einfach verschieben ;D.

Ich habe folgenden Code:
Code:
<TD colspan=6 rowspan=2 align="center" nowrap="1"><TABLE><TR><TD width="100%" bgcolor="#FFFFFF"  nowrap=1><font size="3" face="Lucida Sans" color="#FF0000">
NED
</font> </TD>



Also ich möchte das wenn in dem Code die Farbe:
Code:
color="#FF0000"
vorhanden ist eine bestimmte aktion ausführen.
Ich weiß leider nicht wie ich das aus dem Html code auslesen soll?
Habe anfänger Kenntnisse in HTML, PHP sowie in Java
 
"Aktion" klingt eher als würdest Du nach einem passenden JavaScript suchen. Da Du Java schon kennst, solltest Du dir bewusst werden, dass JavaScript etwas anderes ist als Java. Du müsstest dir also noch JavaScript aneignen um das zu erreichen was Du willst.
 
Ok, das wäre nicht das Problem, dann müsste ich nur wissen welcher Befehl letztlich dafür benötigt wird, das drumherum krieg ich dann schon hin ;D

aktion war vielleicht etwas unpassend ausgedrückt, ich hatte das so gedacht dass ich eine Abfrage durchführe ob die Farbe die im Html Code drin ist, der gesuchten Farbe entspricht. Wenn das zutrifft soll etwas ausgeführt werden. Meinetwegen soll "Ja" angezeigt werden. Wenns nicht erfüllt ist, also die Abfrage false ergibt soll dann z.b. "No" angezeigt werden.

wie gesagt, das drumherum bekomme ich schon irgentwie hin, nur halt dieser spezielle Befehl mit dem ich überprüfen kann ob etwas in dem HTML file enthalten ist fehlt mir.
 
Der Zugriff auf Style-Eigenschaften ist etwas anders als auf "normale" HTML-Attribute es sei denn Du setzt die Farbe inline ein. Also:

HTML:
<element id="elementeID" style="color: red;">

Darauf könntest Du z.B. mit

Code:
document.getElementById("elementeID").style.color

zugreifen.

Wenn Du den Wert in einer externen CSS-Datei setzt, müsstest Du dich über ComputedStyle informieren. Das wird bei jedem Browser dummerweise unterschiedlich gesetzt und müsste unterschiedlich ausgewertet werden. Aber es gibt dafür fertige Funktionen die so etwas ermöglichen, die Du sicher mit "computedstyle" als Stichwort findest.

Moderation: Verschoben von HTML zu JavaScript.

EDIT: Oh, mist. Du sprichst ja von HTML-Attributen, nicht von Style-Eigenschaften. Also ist untenstehendes für deine Frage passender. Ich würde dir dennoch empfehlen CSS zu verwenden.
 
Javascript tickt da etwas anders. Du durchsuchst deine HTML-Datei nicht nach einem Text-Schnipsel, sondern du überprüfst Eigenschaften einzelner Objekte.
Du kannst dir besipielsweise ein array generieren, in dem sämtliche TD-Objekte stehen:
HTML:
<script type='text/javascript'>
var tds = document.getElementsByTagName("TD");
var color = "#FF0000";
var newColor = "#00FF00";
for (var i in tds) {
  if (tds[i].bgColor == color) {
    tds[i].bgColor = newColor;
  }
}
</script>
Das hab ich nicht getestet, aber so in etwa sollte das gehen.
Was nicht unerwähnt bleiben sollte: Dein HTML sieht altertümlich aus ... so baut man schon lange keine HTML-Seiten mehr ...
 
Das Problem mit
Code:
document.getElementById("elementeID").style.color

besteht darin, dass hier ein Hexwert als rgb() ausgegeben würde, während:
Code:
document.getElementById("elementeID").getAttribute("style");

Neben dem Hexwert auch das Attribut zurückliefert.

Ich halte beide Methoden für suboptimal. Sinnvoller wäre eine Formatierung in CSS und die Abfrage mit jQuery.
 
Danke erstmal dazu
Der Code ist ja nicht auf meinem Mist gewachsen, ich kann den HTMl Code auch nicht verändern, er ist so wie er ist.
Das ist ein Auschnitt aus dem Vertrungsplan unserer Schule, wenn etwas in rot geschrieben ist, heißt das, das etwas vom ursprünglichen Plan abweicht.
Die Website von der der Code kommt, arbeitet auch noch mit Frames, von daher ;D
Ich werde eure Vorschläge morgen ausprobieren, bei Fragen melde ich mich wieder ;D

//edit die Ansätzte mit CSS hören sich zwar gut an, da ich aber keinen EInfluss auf den Code habe, helfen sie mir nicht.
Hätte ich auch im ersten Post dazu schreiben sollen, sry dafür

//edit 2
Javascript tickt da etwas anders. Du durchsuchst deine HTML-Datei nicht nach einem Text-Schnipsel, sondern du überprüfst Eigenschaften einzelner Objekte.
Du kannst dir besipielsweise ein array generieren, in dem sämtliche TD-Objekte stehen:
HTML:
<script type='text/javascript'>
var tds = document.getElementsByTagName("TD");
var color = "#FF0000";
var newColor = "#00FF00";
for (var i in tds) {
  if (tds[i].bgColor == color) {
    tds[i].bgColor = newColor;
  }
}
</script>
.

Wie verweise ich denn nu noch auf die Website von der der Code ursprünglich kommt, wo er nach den TD-Objekten suchen soll ?
 
Zuletzt bearbeitet:
wie gesagt, das drumherum bekomme ich schon irgentwie hin, nur halt dieser spezielle Befehl mit dem ich überprüfen kann ob etwas in dem HTML file enthalten ist fehlt mir.
Ja, das sind immer so Fragen ...
Der Schnipsel von mir soll in den Head-Bereich der HTML-Datei. Wie dir das gelingt, wenn du den Code nicht ändern kannst, weiß ich auch nicht ... aber irgendwo müssen wir ja ansetzen, was?
Damit der Code erst ausgeführt wird, wenn die Seite fertig geladen ist, musst du ihm noch mitteilen, dass er mit dem Ausführen warten muss:
HTML:
<head>
...
<script type='text/javascript'>
window.onload=function() {
  var tds = document.getElementsByTagName("TD");
   var color = "#FF0000";
   var newColor = "#00FF00";
   for (var i in tds) {
     if (tds[i].bgColor == color) {
       tds[i].bgColor = newColor;
     }
   }
}
</script>
</head>
Jetzt auch im FF getestet ...
 
Zurück
Oben