0
我想分開保存我的頁面,並使用ajax將它們全部加載到一個主頁面中,這樣我可以更快地更改我的佈局。我使用Metro UI Css。當通過Ajax打開時,頁面無法正常工作
問題是,我的網頁在單獨調用時工作正常,但通過ajax調用並顯示在主頁面上時,它不響應或拋出任何異常。這是一個加載的頁面我的html代碼:
<head>
<script src="../../app/webroot/js/jquery/jquery.min.js"></script>
<script src="../../app/webroot/js/jquery/jquery.widget.min.js"></script>
<script src="../../app/webroot/js/prettify/prettify.js"></script>
<script src="../../app/webroot/js/load-metro.js"></script>
</head>
<body class="metro">
<div class="accordion" data-role="accordion" style="font-size:20px; color:#3D5168">
<div class="accordion-frame">
<a class="heading" href="#"><i class="icon-history"></i>Early days</a>
<div class="content">
<p>Line 1</p>
</div>
</div>
</div>
</body>
我懷疑該行
href="#"
有事情做它,它可能會嘗試打電話給原來的頁面,它來自,而不是實際顯示的頁面。我在「調用者」頁面上執行所有相同的導入操作,正如我所說的,我沒有任何例外。
這是我的加載頁面(阿賈克斯)
function LoadPage(PageName)
{
document.getElementById('LoadedPage').style.visibility='hidden';
document.getElementById('loader').style.visibility='visible'
var xmlHttp=MakeConn();
xmlHttp.onreadystatechange = function()
{
if(xmlHttp.readyState === 4)
{
HandleLoad(xmlHttp.responseText,PageName);
}
};
xmlHttp.open("GET", "http://www.somewebsite.com/main/"+PageName, true);
xmlHttp.send(null);
}
function HandleLoad(response,PageName)
{
if(PageName!='home')
{
document.getElementById('home').className = 'tile bg-VSblue1';
}
if(PageName!='games')
{
document.getElementById('games').className = 'tile bg-VSblue1';
}
if(PageName!='about')
{
document.getElementById('about').className = 'tile bg-VSblue1';
}
if(PageName!='contact')
{
document.getElementById('contact').className = 'tile bg-VSblue1';
}
document.getElementById(PageName).className = 'tile double bg-VSblue1 selected';
document.getElementById('loader').style.visibility='hidden';
document.getElementById('LoadedPage').style.visibility='visible';
document.getElementById('LoadedPage').innerHTML = response;
}
有沒有人對如何解決這一問題的一些建議嗎?謝謝...
我沒有看到任何JavaScript或jQuery代碼。你如何加載頁面? – RononDex
^我們不知道你是怎麼做的,所以我們不能告訴你你做錯了什麼。 – user1596138
能否提供ajax功能 – Merlin