2012-09-12 15 views
8

Dopo 4 ore di messaggi di lettura per cercare di risolvere questo .....Jquery modulo di plugin non lavorare in IE 8

Io uso il plugin per caricare foto e restituirlo al Editor TinyMCE. Funziona perfettamente in Chrome e Firefox ma fallisce in IE. Negli strumenti di sviluppo, si rompe in jquery.forms.js sulla riga 474 poiché IE non riconoscerà l'istruzione finally. Quindi lo rimuovo e quindi ricevo l'accesso negato quando lo stesso file chiama form.submit(). Non importa cosa non riesca a risolvere questo problema. Sto usando Jquery v. 1.8.1 e Malsup Jquery Form Plugin v. 3.15.

Ecco il codice:

$("#img-form").hide(); // hide the browse button 

$("#image").change(function() { 
    $("#img-form").ajaxSubmit(options); // upload the file directly after selection 
}); 


/* 
* set options for jQuery form plugin 
*/ 
var options = { 
    cache: false, 
    contentType:"text/html", 
    type: 'POST', 
    url: "../upload.php", 
    data: { width: w, height: h, bounds: b }, 
    success: showResponse // post-submit callback 
}; 

function showResponse(responseText, statusText, xhr, $form) { 
    var obj = JSON.parse(responseText); 
    var state = obj.state; 
    var response = obj.response; 

    if(state) { 
     tinyMCE.execCommand('mceInsertContent', false, response); // place the image into the editor 
    } else { 
     alert(response); 
    } 
} 

Qualsiasi aiuto a tutti e vi farà risparmiare la mia sanità mentale, grazie!

risposta

6

Si scopre che questo non è possibile al 100%. Da quando ho aperto il browser dei file tramite un trigger click e non da un utente reale che fa clic sul pulsante, IE non sarà in alcun modo in alcun modo come consentire di inviare un modulo per motivi di sicurezza. Dovevo fare in modo che l'utente faccia clic sull'input del file manualmente e quindi il plug-in del modulo ha fatto la sua magia.