有一種解決方法聽起來更像是一種破解,我同意這不是最優雅的方法,但可以100%起作用:
說您的AJAX響應類似於
<b>some html</b>
<script>alert("and some javscript")
請注意,我故意跳過了結束標記。 然后在加載上述內容的腳本中,執行以下操作:
$.ajax({
url: "path/to/return/the-above-js+html.php",
success: function(newhtml){
newhtml += "<";
newhtml += "/script>";
$("head").append(newhtml);
}
});
只是不要問我為什么:-)這是我經過絕望的幾乎隨機試驗而失敗的結果之一。
我沒有關於它如何工作的完整建議,但有趣的是,如果將結束標記添加到一行中,它將不起作用。
在這樣的時代,我覺得自己已經成功地除以零。