我打開一個網頁使用jQuery .load(file.php)
刷新.js文件沒有按F5
我有一個.js包括像file.php:<script src='js/script.js' type="text/javascript" language="javascript"></script>
當我加載file.php,他止跌加載我的JS文件...有誰知道爲什麼以及如何解決它?
謝謝
我打開一個網頁使用jQuery .load(file.php)
刷新.js文件沒有按F5
我有一個.js包括像file.php:<script src='js/script.js' type="text/javascript" language="javascript"></script>
當我加載file.php,他止跌加載我的JS文件...有誰知道爲什麼以及如何解決它?
謝謝
檢查路徑,使.JS文件的絕對路徑,它應該加載。
<script src='/js/script.js' type="text/javascript" language="javascript"></script>
只是要積極嘗試像這樣...
function ajax(url, selector){
$.ajax({
type: "GET",
url: url,
success: function(data){
$(selector).html(data);
}
});
}
ajax("file.php", "#mydiv");
我不知道爲什麼,但jQuery的清晰腳本元素時負荷的html。
我最近遇到了同樣的問題,經過幾天在谷歌搜索後,我可以實現一個解決方法。
$.ajax({
url: 'mypage.aspx',
data: eval('(' + MyData + ')'),
dataType: 'html',
success: function (data) {
var $div = $('<div></div>').hide().appendTo($("#MY_DIV")).html(data).remove();
var innerData = $(data).html();
$("#MY_DIV").html(innerData);
}
});
其他可能的方式是添加腳本在當前頁:
$.ajax({
url: 'mypage.aspx',
data: eval('(' + MyData + ')'),
dataType: 'html',
success: function (data) {
//Add to DOM scripts from the loaded page.
var headID = document.getElementsByTagName("head")[0];
var arr = data.match(/<script(.|\n|\t)*?script>/gi);
if (arr != null) {
for (var i = 0; i < arr.length; i++) {
if (arr[i].match(/<.*?src=.*?>/) != null) {
var sSrc = arr[i].match(/src=".*?"/)[0];
sSrc = sSrc.replace('src=', '').replace('"', '').replace('"', '');
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.src = sSrc;
headID.appendChild(newScript);
}
}
}
var arr = data.match(/<link(.|\n|\t)*?>/gi);
if (arr != null) {
for (var i = 0; i < arr.length; i++) {
if (arr[i].match(/<.*?href=.*?>/) != null) {
var sHref = arr[i].match(/href=".*?"/)[0];
sHref = sHref.replace('href=', '').replace('"', '').replace('"', '');
var newLink = document.createElement('link');
newLink.rel = "stylesheet";
newLink.type = "text/css";
newLink.media = "all";
newLink.href = sHref;
headID.appendChild(newLink);
}
}
}
$("#MY_DIV").html(data);
}
});
會很好,如果你給我的整個代碼...因爲它沒有爲我工作..也許我做了錯誤.. – njaknjak 2011-03-27 00:01:23
我通常把我所有的腳本放在一個調用頁面。也許看到[this](http://www.bennadel.com/blog/1605-jQuery-AJAX-帶腳本標籤 - 和 - 插入了他們,之後,家長最Elements.htm)。 – 2011-03-27 01:18:28
應該得到加載並執行。是什麼讓你覺得它不是? – 2011-03-26 23:14:56
使用Chrome開發人員工具或Firefox Firebug(或其他瀏覽器中的等效工具)查看服務器正在請求什麼,以及它爲什麼可能失敗。 – Amadan 2011-03-26 23:16:38