Ich benutze AJAX über jQuery, um eine Anfrage zu bekommen. Bei Erfolg platziere ich das Ergebnis in eine div:Teil der jQuery Callback-Behandlung rückgängig macht meine Aussage
$.get("content.php", function(result) {
$('#content').html(result);
Der Inhalt ich anfordernden bin selbst HTML und hat zwei divs, #article_name
und #article_content
. Nachdem es geladen ist, überprüfe ich, ob #article_content
irgendwelche Kinder hat. Wenn dies nicht der Fall, füge ich einen <p>
Block:
if (!$('#article_content').children().length) {
$('#article_content').html('<p>(Click here to enter text)</p>');
}
}
Das funktioniert, bis JavaScript, um die Callback-Funktion verlässt. Das heißt, nach meiner Bedingung wird der <p>
Block hinzugefügt; Aber wenn ich im Inspektor von Chrome durchgehe, taucht es in den Callback-Bereich von jQuery ein, und bis es durch den Block <p>
verschwindet, verschwindet es.
Ich habe meine Bedingung in der Konsole ausgeführt, um sicherzustellen, dass es nicht das Problem ist.
Bitte erstellen Sie eine http://jsfiddle.net/demo. Es ist schwer zu helfen, ohne mehr Code zu sehen. –
ich würde es mit append() anstelle von html() – Mik
versuchen, die es nicht getan haben. Wenn ich den bedingten Code von der Konsole aus starte, funktioniert es. Es hat etwas mit dem Callback-Teil von $ .get zu tun. –