所以我是jQuery的新手,我試圖設置一個帶有製表符的html頁面。每個標籤都應該表現出不同的html頁面如下:使用jQuery的AJAX請求不起作用
<div id="tabs">
<a href="page1.html"><div class="tabdiv tabActive">Page1</div></a>
<a href="page2.html"><div class="tabdiv">Page2</div></a>
<a href="page3.html"><div class="tabdiv">Page3</div> </a>
<a href="page4.html"><div class="tabdiv">Page4</div></a>
</div>
<div class="tabscontent" id="ajax-content">
Default text
</div>
所以,我想的是,當我點擊第1頁上,page1.html將在div.tabscontent
裝起來。這是我擁有的jQuery代碼。
$(document).ready(function() {
$("div#tabs a").click(function() {
alert(this.href);
$("#ajax-content").empty().append("Loading");
$("div#tabs div.tabdiv").removeClass('tabActive');
$(this).children('div.tabdiv').addClass('tabActive');
$.ajax({
url: this.href,
success: function(html) {
$("#ajax-content").empty().append(html);
alert("Success!");},
error: function() {
$("#ajax-content").empty().append("Didn't work");}
});
return false;
});
});
注:1)我有最新的jquery附2)I的page1.html,page2.html等都是在相同的文件夾在上述HTML文件。 3)我在本地工作,並嘗試過谷歌瀏覽器,firefox和opera,他們都有標籤顯示「沒有工作」。即使當我在網址中引用http://www.facebook.com時,它也不起作用。請幫幫我。
我把警報放在那裏,看看href是否工作,它是否工作。例如,對於page1選項卡,它會返回`file:///u/b/user/Desktop/ajaxdemo/Page1.html'
AJAX請求受限於同源策略,除非您發送請求的服務器明確允許請求。 – Blender
你應該真的設置一個開發服務器,這樣你可以避免這樣的東西。 – Musa
@Blender他的URL中沒有主機名,所以他們要到主頁面的服務器。 – Barmar