2009-03-22 17 views
0

hey Ich weiß, ich mag wie ein kompletter Dummkopf für das Stellen dieser Frage scheinen, aber ich habe wirklich nie gewusst und nichts, das ich finde, hilft mir. Ich habe diese Zeichenkette mit Javascript generiert und möchte sie direkt an meine bestehende Webseite anhängen. Ich habe document.write() verwendet; oder nur document.getElementbyId (''). append(); und ich kann einfach nicht bekommen es das Dokument an das ausgewählte ID anhängen ...Js schreiben mit keine leere Seite

ich habe:

<p><div id="dT">Bienvenido, Hoy es :: <div id="fecha" class="reloj"></div></div></p> 

und ich möchte den resultierenden String nach dem ::

Die anhängen js befindet sich in einer separaten Datei, aber es beginnt mit dem Laden von onload.


bearbeiten zu beantworten

ich nicht gehabt, aber ich habe gerade versucht, immer noch nichts geschehen, nicht einmal ein Fehler =/das ist, was ich getan habe:

x = Hoy + " " + es + " dia " + dia + " del " + yr; 

document.getElementbyId('dT').innherHTML += x; 
+0

Kommentar zum Bearbeiten, um zu antworten: Sie sollten eine Fehlermeldung von diesem Code erhalten. Haben Sie Javascript-Fehlermeldungen (IE) aktiviert oder die Fehlerkonsole (Firefox) geöffnet? – Guffa

+0

Es gab einen Tippfehler in meinem Code. Es ist innerHTML und nicht innherHTML: P – dirkgently

+0

Ich dachte, dass Sie die Zeichenfolge in das Div nach den zwei Doppelpunkten setzen wollte? Die angenommene Antwort tut das nicht ... – Guffa

Antwort

2

Scheint dass Sie einige Tippfehler haben, JS ist case sensitive, der korrekte Funktionsname ist getElementById (Großbuchstabe "B") und Sie müssen das innerHTML Attribut nicht "innherHTML":

document.getElementById('dT').innerHTML += x; 
+1

Achten Sie auf Cross-Browser-Probleme mit getElementById. Bibliotheken wie jQuery, Prototype etc. entfernen viele dieser Schmerzen für Sie. – Shaun

+0

Hör auf, verdammt Bibliotheken! Speziell für "getElementById" !!! – James

1

Wenn Sie den Text dort, während die Seite geladen wird setzen möchten, verwenden Sie document.write:

<p><div id="dT">Bienvenido, Hoy es :: <div id="fecha" class="reloj"> 
<script type="text/javascript"> 

x = Hoy + " " + es + " dia " + dia + " del " + yr; 

document.write(x); 

</script> 
</div></div></p> 

Sie auch die Innerhtml-Eigenschaft können, aber dann müssen Sie sicherstellen, dass das Skript läuft, nachdem das Element vom Browser gelesen wurde. Außerdem müssen Sie die ID des Elements in der getElementById Aufruf verwenden:

x = Hoy + " " + es + " dia " + dia + " del " + yr; 

document.getElementById('fecha').innerHTML = x; 

Edit:
Wenn Sie den Text angezeigt auf der gleichen Linie wollen, können Sie das div auf eine Spanne ändern:

<p><div id="dT">Bienvenido, Hoy es :: 
<span id="fecha" class="reloj"></span> 
</div></p>