Hi,
ich möchte den Inhalt eines DIVs ändern, klappt auch, aber statt Bild zeigt der Browser mir Code an.
Ein PHP-Script liefert mir als Ergebnis:
PHP-Code:
$new = '<img src="../images/thumbs/thumb_'.$value['movie_title'].'.png" border="0" />';
echo $new;
JS greift den Response auf und soll mittels Funktion replaceText jetzt eigentlich nur alten Inhalt eines DIVs gegen den neuen aus dem PHP- Script austauschen.
Zunächst meine Callback Funktion:
Code:
function updatePage() {
if(request.readyState == 4) {
var newData = request.responseText;
var oldData = document.getElementById("nowplaying");
replaceText(oldData, newData);
}
}
Dann die Replace Funktion:
Code:
function replaceText(el, text) {
if (el != null) {
clearText(el);
var newNode = document.createTextNode(text);
el.appendChild(newNode);
}
}
Hier noch die clearText Funktion:
Code:
function clearText(el) {
if (el != null) {
if (el.childNodes) {
for (var i = 0; i < el.childNodes.length; i++) {
var childNode = el.childNodes[i];
el.removeChild(childNode);
}
}
}
}
Austausch funktioniert einwandfrei, er zeigt mir aber das IMG Tag an und nicht das Bild - es soll natürlich umgekehrt sein! Ich möchte gerne das Bild sehen.
Das alte DIV sieht so aus:
PHP-Code:
<div id="nowplaying">
Nothing plays... :-(
</div>
Das neue soll dementsprechend so aussehen:
PHP-Code:
<div id="nowplaying">
<img src="../images/thumbs/thumb_rambo.png" border="0" />
</div>
Kann das am nodeType liegen?
Weiss jemand Rat, 1000 Dank, Marc