2017-02-15 1 views
0

Der folgende Code funktioniert in Chrome und Firefox. Aber ich habe Probleme mit Safari.Sie müssen Javascript in Ajax ausführen.

main.php enthält:

<script> 
function show<?php echo $s; ?>(str) { 
if (str.length == 0) { 
    document.getElementById("textOrder").innerHTML = ""; 

    return; 
} else { 

    var xmlhttp = new XMLHttpRequest(); 
    xmlhttp.onreadystatechange = function() { 
     if (this.readyState == 4 && this.status == 200) { 
      document.getElementById("textOrder").innerHTML =  this.responseText; 

      $.post("<?php echo site_url(); ?>/test.php?q=" + str, function(response){ 




        $("#ajax_responses").load(response); 
$("#ajax_responses").html(response); 

    var quantity = $('#quantity',response).val(); 
        document.getElementById('example').value = quantity; 

$("#ajax_responses").find("script")(function(){ 
eval($(this).text()); 
}); 
    }); 

     } 
    }; 
    xmlhttp.open("GET", "<?php echo site_url(); ?>/test.php?q=" + str, true); 
    xmlhttp.send(); 

    } 
} 




</script> 
<div id="ajax_responses" style="display:none;"></div> 

Ich habe Javascript innerhalb meiner AJAX Antwortdatei, die ich ausführen bin versucht. Der Code wird in Chrome und Firefox ausgeführt.

Mein test.php enthält folgende

<script type="text/javascript" id="runscript"> 


    alert("test"); 

</script> 

Wie kann ich die Javascript in Safari ausführen bekommen?

Jede Hilfe wird sehr geschätzt!

Danke!

+0

jeder Konsole Fehler zu melden? –

+0

this '$ (" # ajax_responses "). Load (Antwort); $ ("# ajax_responses") .html (Antwort); 'sieht sowieso völlig verdächtig aus - sicher, dass Sie keine Fehler in anderen Browsern bekommen? –

+0

Hallo, '$ (" # ajax_responses ") .html (Antwort)' funktioniert gut in Chrome und Firefox. Ich habe es nicht mit IE getestet, aber ich bin nicht besorgt darüber. Aber ich kann Safari nicht zur Arbeit bringen. –

Antwort

0

Wirklich überrascht niemand gab irgendwelche Antworten ... Allerdings fand ich eine Lösung für das Problem.

Sie können das JavaScript mit PHP im Ajax-Aufruf wiederholen.

Etwas wie folgt aus:

<?php echo '<script>alert("test")</script>'; ?> 
Verwandte Themen