2
感謝給了我在這裏的幫助下,我有一段JavaScript是切換從一個PHP文件一個div並加載內容的可見性是切換DIV:Javascript的調用PHP內容
function compare_toggle_visibility(id, line, collection)
{
var e = document.getElementById(id);
e.style.display = ((e.style.display!='none') ? 'none' : 'block');
$(e).load('http:/www.minorworksoflydgate.net/XML/XQuery/test_command_line.php'+ '?collection=' + collection + '&zone=' + id + '&line=' + line, function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
alert("External content loaded successfully!");
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
}
這很適合用於測試的小php文件,但是我遇到的問題是我的實際生產文件需要一些時間才能加載。因此,在代碼可以加載到div之前,div會切換並存在。我收到了一條警告消息,表明外部內容已加載,但我沒有看到div本身。
爲了解決這個問題,我試圖在加載函數之後放置切換鍵,但這沒什麼區別。我也嘗試將php調用的結果加載到變量中,然後在加載成功時將該變量的結果調用到div中,但這也不起作用。
function compare_toggle_visibility(id, line, collection)
{
var e = document.getElementById(id);
e.style.display = ((e.style.display!='none') ? 'none' : 'block');
var l = load('http:/www.minorworksoflydgate.net/XML/XQuery/test_command_line.php'+ '?collection=' + collection + '&zone=' + id + '&line=' + line, function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
$(e).html(l);
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
}
我不知道我要去哪裏錯了 - 我是用PHP和XML很舒服,而且沒有那麼用JavaScript,尤其是使用Ajax和jQuery。
這真是奇怪 - 工作正常上一個完全普通的HTML文件,但不能在我的生產現場,而其他人做。或許,我可能沒有給它足夠的時間來加載。我要切換它,去做一些其他的事情,當我回來時看看它是否被加載。 – medievalmatt
是的,還有另一個bug。我添加了一些顯示「正在加載...」之前切換,並顯示,但代碼不會完成加載時。這可能是生產網站上某種CSS的東西。我要標記這個正確的答案,因爲它絕對解決了我最初的JavaScript問題。 – medievalmatt
好的謝謝。祝一切順利 – Ahmadbaba46