大家帮忙,看我这样写为什么不能得到正确结果?
代码是没有问题的,部分代码已经省略:
var XmlHttp=new ActiveXObject( "Microsoft.XMLHTTP ");
function AjaxRequest(url,tag)
{
if (tag== "1 ")
{
xmlhttp.onreadystatechange = Contents;
}
if (tag== "2 ")
{
xmlhttp.onreadystatechange=BackList;
}
xmlhttp.open( 'GET ', url, true);
xmlhttp.send(null);
}
function Contents() {docutment....}
function BackList() {docutment....}
<form> .....
<div> <script> AjaxRequest(url,1) </script> </div>
<div> <script> AjaxRequest(url,2) </script> </div>
问题:只有第二个div里的数据正确显示,如果第一个div和第二个div交换,也还是第二个div里正确显示了。是什么原因?
------解决方案--------------------if (tag==1)
not
if (tag== "1 ")
------解决方案--------------------用alert看一下if语句是否达到了你的想法
if (tag== "1 ")
{
alert( "1 ");
xmlhttp.onreadystatechange = Contents;
}
if (tag== "2 ")
{
alert( "2 ");
xmlhttp.onreadystatechange=BackList;
}
------解决方案--------------------楼主你的tag是什么类型数据?如果是整形的,那么if中的应该是tag==1
------解决方案--------------------对。。有可能 加个setTimeout
------解决方案--------------------你的两个DIV是不是在一个地方?
我怀疑是不是第二个DIV覆盖了第一个。实际上两个都显示出来的。呵