Javascript PHP变量作为documnet.getelementbyid变量

Javascript PHP变量作为documnet.getelementbyid变量,javascript,php,innerhtml,Javascript,Php,Innerhtml,我试图找到一个答案,但我在这里兴奋不已,希望有人能解释到底发生了什么 我有一个PHP文件,它将PHPvariable回显到xmlhttp.responseText。然后将此变量分配给javascript变量,如下所示: var retn = xmlhttp.responseText; 当我对变量发出如下警告时: alert(retn); 我得到了正确的信息,一切看起来都很好。现在,在下一行中,我尝试这样做: document.getElementById(retn).innerHTML =

我试图找到一个答案,但我在这里兴奋不已,希望有人能解释到底发生了什么

我有一个PHP文件,它将PHPvariable回显到xmlhttp.responseText。然后将此变量分配给javascript变量,如下所示:

var retn = xmlhttp.responseText;
当我对变量发出如下警告时:

alert(retn);
我得到了正确的信息,一切看起来都很好。现在,在下一行中,我尝试这样做:

document.getElementById(retn).innerHTML = "test"; 
它不工作…但是如果我像这样手动输入ID

document.getElementById("foo").innerHTML = "test";

一切都正常…我不知道为什么它不能与变量一起工作(显然,它可以很好地从php文件传递到函数中。有人有什么想法吗?

我猜响应文本中有额外的空白。Does
alert(retn.length)
show expected length?只为显示准确的代码:xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4&&xmlhttp.status==200){retn=xmlhttp.responseText;alert(retn);///按预期返回:返回:someid document.getElementById(retn).innerHTML=“test”;//不返回document.getElementById('someid')。innerHTML=“test”;//如果我这样做,它会工作}不要将代码放在注释中,编辑问题,这样您就可以用可读的格式显示它。要在so中格式化代码,请标记它并键入Ctl-k或使用工具栏上的
{}
工具。