javascript Uncaught TypeError:无法调用null的方法'getElementsByTagName'

时间:2013-02-15 05:57:54

标签: javascript xml jquery

Prestashop我正在使用alphabitical搜索模块。当我在prestashop主题(1.5.0.17)上安装模块时,出现了类似

的错误
Uncaught TypeError: Cannot call method 'getElementsByTagName' of null 

以下是jQuery文件的代码

function initXMLHTTPRequest()
{
var xmlHttp = null;
  try 
  {
    // Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
    }
    catch (e)
     {
           // Internet Explorer
            try 
            {
                xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
            }catch (e)
             {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
       }
     return xmlHttp;
}
function getProdList(id,langid)
{
    var xmlHttp=initXMLHTTPRequest();
    var str = "value="+id+"&langid="+langid;
    var span="";
    var url = "modules/alphabetsearch/PHP/searchDetails.php?";
        xmlHttp.onreadystatechange=function()
        {
                  if(xmlHttp.readyState==4 )
                  {
                      span=span+"<ul style='padding-bottom:20px;'><li><b>"+id+"</b></li>";
                      var xmldata=xmlHttp.responseXML;
                      var xmlObj = xmldata.getElementsByTagName("ProductDetails")[0];
                      var menusize= xmlObj.childNodes[0].childNodes[0].childNodes[0].nodeValue;
                      var xmlObjlength = xmlObj.childNodes.length;
                      for(var i=1;i<xmlObjlength;i++)
                        {
                        var ProductName=xmlObj.childNodes[i].childNodes[0].childNodes[0].nodeValue;
                        var productId=xmlObj.childNodes[i].childNodes[1].childNodes[0].nodeValue;
                        span=span+"<li  style='line-height:20px;display:block;height:20px;list-style:none;border-bottom:1px solid #666666;'><a href='product.php?id_product="+productId+"'><div>"+ProductName+"</div></a></li>"
                        }
                        if(xmlObjlength==1)
                        {
                            document.getElementById("products").innerHTML="";
                            document.getElementById("products").innerHTML="No Products Under this Alphabet";
                        }
                        else{
                        document.getElementById("products").innerHTML="";
                        span=span+"</ul>";
                        document.getElementById("products").innerHTML=span;
                        }
                  }
        };
         xmlHttp.open("POST",url,true); 
         xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
         xmlHttp.setRequestHeader("Content-length", str.length);
         xmlHttp.setRequestHeader("Connection", "close");
         xmlHttp.send(str);
}

有人可以告诉我如何解决这个问题吗?任何帮助和建议都将非常有用。感谢

可以找到实时网站here

0 个答案:

没有答案