Geben Sie Ihren Benutzernamen und Ihr Passwort ein, um sich an der Web-Site anzumelden:
 
Thema ohne neue Antworten

Text in Quelltext


Autor Nachricht
Verfasst am: 12.04.2003 [23:22]
-=[::::)SASUKI(::::]=-
Themenersteller
Dabei seit: 30.10.2002
Beiträge: 499
hi,


ich hab ein kleines problem mit JS, also ich hab folgenden code da stehen:

[code:1:9addb0e4d2]function test(cell)

{

value = "<span style='font-weight: bold'>TESTTESTTEST</span>";

document.getElementById(cell).replaceChild(document.createTextNode(value), document.getElementById(cell).firstChild);

}

</SCRIPT>

<body id="body" onLoad="test('cell')">

<TABLE BORDER="0">

<TR>

<TD id="cell">

</TD>

</TR>

</TABLE>

</body>

</HTML>[/code:1:9addb0e4d2]

ich wollte jetzt eigentlich das der text TESTTESTTEST jetzt dick erscheint, aber der text wird nicht in den quelltext gesetzt bzw. werden < und > durch < und > ersetzt.

Meine Frage:
Wie kann ich es hinkreigen, das value in den quelltext geschreiben wird.

danke

sasuki
Verfasst am: 13.04.2003 [09:42]
joe
Dabei seit: 07.04.2002
Beiträge: 1225
Ersetz mal das [code:1:c81d8040b0]document.getElementById(cell).replaceChild(...);[/code:1:c81d8040b0] durch [code:1:c81d8040b0]document.getElementById(cell).innerHtml = value;[/code:1:c81d8040b0]

Alternativ kannst Du statt [TT]innerHtml[/TT] auch [TT]innerText[/TT] benutzen. Das hat allerdings eine etwas andere Funktionsweise (den genauen Unterschied hab ich grad nicht mehr im Kopf - sollte aber in jedem JS-Manual nachzulesen sein).

Achja, noch was: ich hatte schon des öfteren Probleme mit Funktionen, die im onload-Event des Body aufgerufen werden (v.a. Objekt nicht gefunden). Ggf. Mußt Du den Funktionsaufruf innerhalb von <script>-Tags am Ende der Seite einbauen (vor </body>icon_wink.gif.

cu
Joe

while(!asleep()) sheep++;
Verfasst am: 13.04.2003 [10:58]
-=[::::)SASUKI(::::]=-
Themenersteller
Dabei seit: 30.10.2002
Beiträge: 499
hi,

bei mir gehts net,
der mozilaa zeigt folgende fehlermeldung:
[TT]
document.getElementById(cell) has no properties[/TT]

ich hab jetzt einfach die function test(cell){ und } weggemacht, und das onload auch, und hab da drüber cell="cell"; geschreiben.

Geht aber auch nicht.
Was mach ich den falsch

danke

sasuki
Verfasst am: 13.04.2003 [12:46]
joe
Dabei seit: 07.04.2002
Beiträge: 1225
Was Du genau falsch machst, weiß ich net... Aber das hier funktioniert:[code:1:b7c34ac0da]<html>

<head>

    <script type="text/javascript">

    function test(cell)

    {

    value = "<span style='font-weight: bold'>TESTTESTTEST</span>";

    document.getElementById(cell).innerHTML = value;

    }

    </SCRIPT>

</head>

<body id="body" onload="test('cell');">

    <TABLE BORDER="0">

    <TR>

    <TD id="cell"></TD>

    </TR>

    </TABLE>

</body>

</HTML>[/code:1:b7c34ac0da]

Wenn Du oben im Script noch ein [TT]alert(document.getElementById(cell));[/TT] einbaust, dann siehst Du ja, ob der die Zelle als Objekt kennt/findet. Entweder steht da irgendwas von [tt]NULL[/tt] oder [tt]undefined[/tt] oder irgendwas in Richtung [TT]object HTMLTableCellElement[/TT].

Wenn er das Objekt nicht kennt, dann bau einen <script>-Block am Ende der Seite ein (vor </body>icon_wink.gif und ruf dort erst die Funktion auf. Wenn der Parser zu diesem Punkt kommt, dann kennt der das Objekt (=die Zelle) auf jeden Fall.

BTW: innerHTML, nicht innerHtml... Sorry...
cu
Joe

while(!asleep()) sheep++;
Verfasst am: 13.04.2003 [13:38]
-=[::::)SASUKI(::::]=-
Themenersteller
Dabei seit: 30.10.2002
Beiträge: 499
Ok, danke jetzt klappt es.