JS 未将 php 加载到 div,网站特定行为

JS not loading php into div, website specific behaviour

我有两个 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(如您所见,我不喜欢使用它),并且都具有相同的模板。我似乎发现的唯一线索是,当我在网站其他地方的文本 links 中附加了指向自身的查询语句 (index.php?blastr=bla&drivelstr=drivel) 时,浏览器显示 index.php/ 前面提到的 link。

我调试了脚本,在无法正常运行的网站中,它挂在 xmlhttp3.send 行。

我知道人们拥护 jquery 的 load() 函数的优点来替代它,但我无法让它工作(可能是因为模板使用的 jquery 版本更高比 1.8.1 被弃用时)。所以我宁愿坚持使用 base js。

关于这种不一致的行为有什么想法吗?

这应该是评论,但还不能:( 我会检查您的配置文件中的这一行:

public $live_site = '';

并查看故障站点中是否有除 '' 之外的内容。

我发现它是什么了,我一定是在我的网站上安装了两个不同版本的 Jumi 应用程序。一个网站在 components/com_jumi/views/application 下有一个名为 view.raw.php 的文件,而另一个网站则没有。这意味着无法解释 index.php 字符串中的 format=raw 并导致空响应。

我只是将该文件复制到它丢失的其他网站,然后一切正常。不过谢谢你的回复。