我有两个joomla应用程序,它们具有完全相同的版本,相同的全局配置设置,并且我使用以下函数设置了一个测试应用程序,以将php加载到特定页面上的div中。
function getDiv(str) {
var id = document.getElementById("appselector").value;
if (id == "") {
document.getElementById("scoffitcategoryedit").innerHTML = "";
return;
}
else {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp3 = new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp3 = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp3.onreadystatechange = function() {
if (xmlhttp3.readyState == 4 && xmlhttp3.status == 200) {
document.getElementById("scoffitcategoryedit").innerHTML = xmlhttp3.responseText;
alert("WTF");
}
};
xmlhttp3.open("GET","index.php?option=com_jumi&fileid=23& format=raw&" + str + id, true);
xmlhttp3.send();
}
}
我知道它有点啰嗦,但问题是该脚本在一个网站中运行正常,但在另一个网站中运行不正常。他们两个都加载相同版本的jquery(你可以看到我不喜欢使用),并且两者都有相同的模板。我似乎发现的唯一线索是,当我在网站上的其他地方附加文本链接时,查询语句指向self(index.php?blastr = bla& drivelstr = drivel),浏览器显示index.php / prepended to the上面提到的链接。
我调试了脚本,在非功能网站上它挂起在xmlhttp3.send行。
我知道人们支持使用jquery的load()函数来代替它,但是我无法使它工作(可能是因为模板在不推荐使用时使用的jquery版本高于1.8.1 )。所以我宁愿坚持使用基础js。
关于这种不一致行为的任何想法?
答案 0 :(得分:0)
这应该是评论,但还不能:( 我会检查一下你的配置文件:
public $live_site = '';
并查看失败网站中是否有某些内容除了''。
答案 1 :(得分:0)
我发现它是什么,我必须在我的网站上实际安装了两个不同版本的Jumi应用程序。一个网站在components / com_jumi / views / application下有一个名为view.raw.php的文件,而另一个没有。这意味着无法解释index.php字符串中的format = raw并导致null响应。
我只是将文件复制到丢失的其他网站,然后一切正常。但感谢您的回应。