D.R.: GetElementById/GetElementsByTagName

Beitrag lesen

Hallo,

[Funktion]

Die Funktion ist aber sehr eingeschränkt. Die liefert maximal die Elemente, die ausschließlich zur gegebenen Klasse gehören.
Elemente können aber zu beliebig vielen Klassen gehören (class="aaa bbb ccc") ...

Das hat mich bis jetzt noch nicht so sehr gestört, da ich sie ohnehin größtenteils als getElementsByValue-Funktion eingesetzt habe.

Im Archiv oder in Google sollten sich aber allgemeine getElementsByClass-Funktionen finden lassen.

Ich habe gerade eine gefunden. Aber irgendwie lässt sie sich _nur_ als getElementsByClassName-Funktion verwenden :-(
Bei der älteren Funktion, die nur einen Klassennamen berücksichtigte, konnte ich auch andere Attribute abfragen, indem ich das Element.className einfach durch ein Element.value ausgetauscht habe. Was muss ich tun, damit das auch mit dieser Funktion klappt?

  
function getElementsByClassName(myName){  
 var CONTROLS = "*";  
 var result = [];  
 var searchExpression = new RegExp( "\\b" + myName + "\\b" );  
  for (var i = 0; i < CONTROLS.length;i++)  
  {var objects = document.getElementsByTagName(CONTROLS[i]);  
   for (var j = 0; j < objects.length;j++)  
   if (objects[j].className.match(searchExpression))  
   result.push(objects[j])}  
 return result;  
}  

Das habe ich versucht.

mfg. Daniel