J'utilise ce code pour charger une htmlbox instance sur ma page (cette page charge également les bibliothèques nécessaires pour utiliser htmlbox dans la section de tête):charge jquery htmlbox avec ajax
<div id="container"></div>
<script language="Javascript" type="text/javascript">
function showEditPnl() {
var pnl = document.getElementById("container");
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
pnl.innerHTML = xmlhttp.responseText;
}
};
xmlhttp.open("GET","ajax_getEditor.html",true);
xmlhttp.send();
}
</script>
Voici le ajax_getEditor .html fichier:
<textarea id='ha'></textarea>
<script language="Javascript" type="text/javascript">
$("#ha").css("height","100%").css("width","100%").htmlbox({
toolbars:[["link","unlink","image"]],
skin:"blue"
});
</script>
Quand j'appelle la méthode showEditPnl()
je vois le textarea et le script dans la page. mais il semble que le script (load ajax ajax) n'est pas exécuté. Quand je copie le code d'ajax_getEditor.html et le place dans le récipient, tout fonctionne bien. Je suis sûr que c'est un problème très basique, mais je ne sais pas comment le résoudre ..
Comment exactement chargez-vous le script via ajax? – Pointy
pointy: j'appelle juste ajax_getEditor.html, et place le responseText dans le conteneur div. Donc j'ai pensé que cela exécuterait automatiquement le script dans ajax_getEditor.html, mais apparemment ce n'est pas le cas .. –
Si vous mettez le script dans la div en définissant simplement 'innerHTML', alors cela n'exécutera pas les scripts. – Pointy