2010-11-25 8 views
0

Ich lade eine Datei in einem iframe (mit Namen und ID = upload_target) auf einige Server. Als Antwort erzeugt es einen Rückruf json Stil:How to parse string html von eingereichten iframe

‚Ergebnis‘: ‚true‘

Also folgend Ich versuche. Auf onload Wirkung meiner IFrame habe ich einen Ereignis-Listener hinzugefügt, die Funktion Grabbing Daten ausgeführt werden soll:

function fileUploadFunction(){ 
    (...) 
    $("#upload_target").onload = uploadDone; 
    (...)   
}; 

function uploadDone() { 
    alert("uploadDone"); 
    var ret = frames['upload_target'].document.getElementsByTagName("body")[0].innerHTML; 
    var data = eval("("+ret+")"); 

    if(data.result == 'true') { 
     alert("GREAT SUCCESS !!");    
    } 
    else { 
     alert("GREAT FAILURE :("); 
    } 
} 

Aber als Ergebnis bin ich überhaupt nicht immer alles. Soll ich den Rückrufstatus in anderer Form zurückgeben oder kann er anders gelöst werden? Da selbst der erste Alarm von uploadDone nicht angezeigt wird, liegt das Problem wahrscheinlich woanders.

Antwort

0

Wahrscheinlich ist der Grund, warum nichts passiert, wegen der funky Art, die Sie erkennen müssen, dass ein iFrame geladen ist. Überprüfen Sie die Post jQuery .ready in a dynamically inserted iframe. Ich nehme an, dass Sie jQuery verwenden.