Felix Riesterer: Link löschen

Beitrag lesen

Lieber Sascha321,

<td colspan="2" height="50">

<div style="font-size:12px; float:left; padding-left:20px; padding-top:2px"> Programm File = </div>

<a id="linkID"></div></a>
</td>

das machst Du lieber anders! Wenn schon dieses Tabellen-Gedöns, dann so:

<td colspan="2" height="50">  
    <span style="font-size:12px; float:left; padding-left:20px; padding-top:2px">  
        Program File :  
    </span>  
    <span id="linkID">Text</span>  
</td>

So. Die Verschachtelung <a></div></a> ist nämlich absoluter Unsinn, da Du kein geöffnetes DIV hattest, und Du solche Querverschachtelungen im Hinblick auf XHTML vermeiden solltest. Auch wenn Du kein XHTML schreibst.

<script type="text/javascript">
<!--

function anzeigen()
     {
         document.getElementById("linkID").href="http://www.google.de";
        document.getElementById("linkID").innerHTML="Link zu Google";
     }

function entfernen()
     {
      document.getElementById("linkID").href="";
        document.getElementById("linkID").innerHTML="kein link";
     }
//-->
</script>

Die HTML-Kommentare lässt Du bitte bleiben. Notiere stattdessen lieber <!CDATA[ {JavaScript-Code} ]]>, wenn Du XHTML schreibst.

Nun zu Deinen Funktionen. Da ich den Link selbst in ein <span>-Element gesetzt habe, geht das natürlich mit Deinen originalen Funktionen so nicht mehr. Dafür kannst Du aber schön das <a>-Element erzeugen, um es später wieder zu entfernen. Das geht so:

function wechseln() {  
    var span = document.getElementById("linkID");  
    var a = span.getElementsByTagName("a");  
    var URL = "http://www.google.com/";  
    var text;  
  
    if (a.length > 0) {  
        // Link vorhanden -> Enfernen!  
        text = a[0].firstChild;  
        span.removeChild(a[0]);  
        span.appendChild(text);  
    } else {  
        // Link nicht vorhanden -> Erzeugen!  
        text = span.firstChild;  
        span.removeChild(text);  
        a = document.createElement("a");  
        a.href = URL;  
        a.appendChild(text);  
        span.appendChild(span);  
    }  
};

Liebe Grüße aus Ellwangen,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)