Tengo una función que carga con AJAX una porción de html desde un archivo. Todo pasa bien, el AJAX carga el html y lo inserta donde lo necesito con innerHTML, pero me encuentro que el javascript embebido en dicho archivo no funciona.
Esto es el HTML que carga:
Código HTML:
<script type="text/javascript"> /* <![CDATA[ */ function probar () { console.debug('Perfecto'); }; /* ]]> */ </script> <div class="layer-entrar"> <h2>Ingresar a la aplicación</h2> <p>Por favor introduce tus datos. <a href="#" onclick="probar()">Entra aquí</a> si aún no estás registrado.</p> </div>
Esta es la función con la que cargo el archivo mediante AJAX:
Código HTML:
function xLayerMsg (dt) { var lyr = xOb('layermessage'), box = xOb('layermessage-box'), cnt = xOb('layermessage-cnt'), cls = xOb('layermessage-cls'); var url = dt['url'], urlW = (dt['ancho']) ? dt['ancho'] : 300; box.style.width = (urlW + 10) + 'px'; cls.onclick = xLayerMsgClose; xTrns(box,0); box.style.display = 'none'; cnt.innerHTML = ''; xShow(lyr,function() { xHide(box,function() { var xh = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); xh.open ('GET',url,true); xh.onreadystatechange = function() { if (xh.status == 200) { if (xh.readyState == 4) { cnt.innerHTML = xh.responseText; xShow(box); }; } else { alert( 'Ajax error status: ' + xh.statusText + '(' + xh.status + ')' ); }; }; xh.send (null); }); }); };