Stelios: getElementsId() ? gibt es sowas für Textbausteine?

Ich weis nicht wie ich mein Problem am einfachsten beschreiben soll.
Hier der Scriptbaustein :

mylabel = '<img border="0" height="16" width="16" id="ORID" src="white.gif">Dummy'

atmp = mylabel;
btmp = atmp.getElementsByTagName("img");
mtmp = btmp.getAttribute("id");
alert(':' + mylabel + ':' + btmp + ':' + mtmp);

Ich muss irgendwie den wert von id im img tag rausholen.
Scheint aber irgendwie so nicht zu klappen.

Hat jemand ne Idee wie man sowas macht?

Vielen Dank im voraus.
Stelios

  1. Hallo!

    Ich muss irgendwie den wert von id im img tag rausholen.
    Scheint aber irgendwie so nicht zu klappen.

    Dann schreibe den String in ein HTML-Dokument. Du hast momentan kein HTML-Element sondern einen JavaScript-String, auf den du nicht mit getElementsByTagName oder getAttribute zugreifen kannst.

    ciao, ww

    --
    sh:(  fo:|  ch:~  rl:(  br:>  n4:~  ie:%  mo:)  va:)  de:]  zu:)  fl:(  ss:|  ls:~  js:)
    1. Hallo!

      Ich muss irgendwie den wert von id im img tag rausholen.
      Scheint aber irgendwie so nicht zu klappen.

      Dann schreibe den String in ein HTML-Dokument. Du hast momentan kein HTML-Element sondern einen JavaScript-String, auf den du nicht mit getElementsByTagName oder getAttribute zugreifen kannst.

      ciao, ww

      Danke erstmal für die schnelle Antwort,

      das ganze würde ich liebend gerne in ein HTML-Dokument einpacken,
      aber das ganze ist in einem yui-tree (Yahoo-Tree) drin. Das einzige was ich dabei raubekomme, wenn ich draufklicke, ist bloss dieser String.

      Also muss ich mich auch mit diesem herumschlagen. :-(

      1. Moin

        nur die id?

        function test(txt) {  
         txt=txt.replace(/<|>/g," ").replace(/ = |= | =/g,"=").split(" ");  
         for (var i=0;i<txt.length;i++) {  
          var t=txt[i].split("=");  
          if (t[0].toLowerCase()=="id" && t[1]) return(t[1])  
         }  
        }
        

        Gruß
        rfb

        --
        Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
        (Galileo Galilei)
        1. Moin

          nur die id?

          function test(txt) {

          txt=txt.replace(/<|>/g," ").replace(/ = |= | =/g,"=").split(" ");
          for (var i=0;i<txt.length;i++) {
            var t=txt[i].split("=");
            if (t[0].toLowerCase()=="id" && t[1]) return(t[1])
          }
          }

          
          >   
          > Gruß  
          > rfb  
            
          Hallo rfb,  
          erstmal danke für die schnelle Antwort.  
            
          Den Code hab ich ausprobiert. Funktioniert einwandfrei. Danke sehr.  
            
            
          Gruß  
          Stelios  
          
          
          1. Moin

            nur die id?

            function test(txt) {

            txt=txt.replace(/<|>/g," ").replace(/ = |= | =/g,"=").split(" ");
            for (var i=0;i<txt.length;i++) {
              var t=txt[i].split("=");
              if (t[0].toLowerCase()=="id" && t[1]) return(t[1])
            }
            }

            
            > >   
            > > Gruß  
            > > rfb  
            >   
            > Hallo rfb,  
            > erstmal danke für die schnelle Antwort.  
            >   
            > Den Code hab ich ausprobiert. Funktioniert einwandfrei. Danke sehr.  
            >   
            >   
            > Gruß  
            > Stelios  
            >   
              
              
            oder noch n bischen einfacher:  
              
                    str = '<img src="bild" id="test" alt="test">';  
              
             var regex = new RegExp("id=\"(.\*?)\"");  
             var match = regex.exec(str);  
             alert(match[1]);  
              
              
            match[1] beinhaltet deine id  
              
            http://de.selfhtml.org/javascript/objekte/regexp.htm  
            
            
            1. Moin

              oder noch n bischen einfacher:

              str = '<img src="bild" id="test" alt="test">';

              var regex = new RegExp("id="(.*?)"");
              var match = regex.exec(str);
              alert(match[1]);

              match[1] beinhaltet deine id

              einfacher und eleganter: ja.
              Aber die von mir berücksichtigten Sonderfälle mit id als letztem Attribut (ohne folgendes Leerzeichen), Leerzeichen ums Gleichheitszeichen sowie Groß/Kleinschreibung von ID fallen hier weg.

              Gruß
              rfb

              --
              Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
              (Galileo Galilei)
          2. Den Code hab ich ausprobiert. Funktioniert einwandfrei. Danke sehr.

            Nur die Frage bleibt, wozu brauchst du diesen Wert?

            Struppi.

            --
            Javascript ist toll (Perl auch!)
    2. Hi,

      Dann schreibe den String in ein HTML-Dokument.

      allgemeiner formuliert: Erzeuge aus dem String einen DOM-(Teil-)Baum.

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
  2. mylabel = '<img border="0" height="16" width="16" id="ORID" src="white.gif">Dummy'

    atmp = mylabel;
    btmp = atmp.getElementsByTagName("img");
    mtmp = btmp.getAttribute("id");

    Das geht sowieso nicht.

    Ich muss irgendwie den wert von id im img tag rausholen.

    Wozu?

    Struppi.

    --
    Javascript ist toll (Perl auch!)