我使用jquery通过ajax调用页面。我有一些jquery函数在从ajax调用的页面中加载返回的html。问题是我试图在返回的数据中包含js文件,它返回html但似乎剥离了脚本标记:
function buildDisplayResults()
{
$.ajax({
method: 'get',
cache: false,
url : '/display_results.php',
dataType : 'text',
success: function (text) { $('#showresults').html(text); }
});
}
我返回的数据<script src="/js/display.js"></script>
上面的脚本代码总是被删除,但我在返回的数据中需要它,因此函数在ajax调用发回的数据内部工作。有什么想法吗?
答案 0 :(得分:0)
据我所知,它应该有效;它必须是您环境中或您正在获取的标记中的其他内容。我已经对它进行了测试,并将其用于Linux和Windows上的IE6,IE7,IE8,Chrome 9,Linux和Windows上的Firefox 3.6以及Linux和Windows上的Opera 11;全部使用jQuery 1.5:
主要示例页面上的Ajax调用:
$.ajax({
url: "/okuli4/3",
dataType: "text",
method: "get",
cache: false,
success: function(data) {
$('#target').html(data);
},
error: function(xhr, status, err) {
$("<p>Error: Status = " + status + ", err = " + err + "</p>")
.appendTo(document.body);
}
});
... /okuli4/3
资源看起来像这样:
<p>I'm the snippet.</p>
<script type='text/javascript' src='/etobe4/2'></script>
<p>I'm the snippet after.</p>
... /etobe4/2
资源看起来像这样:
jQuery("<p>I was added by the external script file.</p>").appendTo(document.body);