Sto utilizzando la richiesta jquery ajax che ottiene il contenuto HTML dal codice back-end. Se lo stato è OK, aggiungo contenuto HTML a un div. Sto usando il seguente codice per aggiungere div usando jquery ajax. come $('#divElm').html(response.data);
. Ma dopo aggiungendo sto ottenendo seguente errore:SyntaxError quando si utilizza jQuery.html per inserire un frammento HTML contenente un elemento di script
SyntaxError: missing } in compound statement
Il contenuto rendering HTML da backend (. Cioè, response.data) contiene i seguenti che sta causando questo errore:
<script type="text/javascript">
function init() {
if(d.getElementById('normal')){
window.normalPop= d.getElementById('normal');
//complicated is local
var complicated= normalPop.parentNode.removeChild(normal);
d.getElementsByTagName('body')[0].appendChild(complicated);
}
}
addLoadEvent(init);
</script>
Non sono sicuro perché questo errore "SyntaxError: missing} nell'istruzione composta" è in arrivo. Le parentesi graffe si stanno chiudendo correttamente nel codice.
Se sto usando innerHTML
invece di html()
funziona correttamente. Nessun errore è il rendering.
Il tuo codice non mostra alcun jQuery - mancano alcune parti? – MarcoK
@MarcoK È lì - '$ ('# divElm'). Html (response.data)', dove 'response.data' è accusato di * contenere * la grande sezione del codice postato. –
Come è "troppo localizzato"? È un problema comune in Jquery: Jquery può generare un errore a causa dello script incluso in esso. La soluzione è avere un try-catch attorno a '.html (...)'. – NoBugs