日期:2014-05-20  浏览次数:20752 次

谁来99我呀 使用Ajax来查歌词
谁来99我呀 
使用Ajax来查歌词 
服务器响应后的报告如下函数 
  function FillDropDown(){ 
  alert("back"); 
  var xmlDoc = this.req.responseXML.documentElement; 
  var xSel = xmlDoc.getElementByTagName("selectElement")[0]; //这句话报错了 
  alert(xSel); 
  var strFName = xSel.childNodes[0].firstChild.nodeValue; //歌词的div 的名字 
  var strEName = xSel.childNodes[1].firstChild.nodeValue; //歌词 
alert("strFName"+strFName); 
alert("strEName"+strEName); 

document.getElementById(strFName).value=strEName; 
  } 
底下是从服务器取回歌词后返回的xml 
  strXML.append(" <selectElement>"); 
  strXML.append(" <formName>"+strElem+" </formName>"); //歌词的div 的名字 
  strXML.append(" <formElem>"+music.getLyric()+" </formElem>"); //歌词 
  strXML.append(" </selectElement>");

------解决方案--------------------
首先alert 以下 request.responseText
看看返回的是不是正确的。
然后再看 xmlDoc 是否为空
然后再继续看看吧,呵呵。
------解决方案--------------------
你的response 返回的要用 text/xml的形式

估计你是用text/html的形式了

所以会报错,或者就是你的中文问题

你在ie的地址栏中直接输入请求看看返回的xml是不是正确的
------解决方案--------------------
request.responseText 的返回结果对吗?

getElementByTagName写错了吧? 

getElementsByTagName 

返回的是一个HTMLCollection