Ajax 不执行后台的方法的问题

DragonDreammer 2011-01-19 07:56:34
最近在做Ajax时遇到一个很奇怪的问题,在前台页面(Default.aspx)中有这么一个JS方法:
function DoAjax()
{
var xmlhttp;

try{
//IE
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}catch(e){
try{
//其他浏览器
xmlhttp = new XMLHttpRequest();
}catch(e){alert("您的浏览器不支持Ajax!");}
}

xmlhttp.open("get","Default.aspx?Dotype=query",true);
xmlhttp.onreadystatechange = function()
{
if(xmlhttp.readyState == 4)
{
if(xmlhttp.status == 200)
{
doTest();
}
}
}
xmlhttp.send(null);
}

前台页面用一个按钮来调用它:
<input id="AjaxTest" type="button" value="AjaxTest" onclick="DoAjax()" />

后台页面中(Default.aspx.cs):
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["Dotype"] != null)
{
//问题就在于这里,无论如何程序都进不到这里面来,而只是执行到if语句就跳回前台了
string typetmp = Request.QueryString["Dotype"].ToString();
.......
....
}
}
以上的代码真没看出来哪里错了,是在IE6里执行时出现的情况,FF中执行没有一点问题。
可是为什么IE6就不行了呢?怎样才能让它兼容IE6呢?谢谢各位了!

...全文
240 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
DragonDreammer 2011-01-20
  • 打赏
  • 举报
回复
谢谢两位的帮助,实际上是我vs出问题了,系统重启一次就好了(-_-不明白这种事怎么被我遇上了),但是最近VS2008还是有时会弹出提示您的VS不稳定之类的话。这种现象是在我最近换了一个系统,重新装的VS后出现的,看来这个系统不稳定,我已经全部重装了,现在问题解决,分就全给二位了吧。
孟子E章 2011-01-19
  • 打赏
  • 举报
回复
xmlhttp.open("get","Default.aspx?Dotype=query&" + Date.parse(new Date()),true);
禁止缓存
persuit666 2011-01-19
  • 打赏
  • 举报
回复
两个地方:
1.var xmlhttp; 放到函数外边,做为全局变量
2.xmlhttp.open("get","Default.aspx?Dotype=query",true); true改成false(即同步)

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧