ajax为什么不执行?

cheniwantyou 2010-08-31 08:26:52
我想通过在tbxsalesno中输入一个号码,然后在tbxsalesname中查询出对应名称,为什么查询不了?
部分ajax代码是这样的,浏览器是IE8
<script language="javascript" type="text/javascript">


function getSalesName()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("您的浏览器不支持AJAX!");
return;
}

var salesno=$("<%=tbxsalesno.ClientID %>").value;

// document.write(salesno);


var url="GetData.aspx?salesno="+salesno;

xmlHttp.onreadystatechange=stateChangedText;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function stateChangedText()
{
if (xmlHttp.readyState==4 && ((xmlHttp.status>=200 && xmlHttp.status<300) || xmlHttp.status==304))
{
$("<%=tbxsalesname.ClientID %>").value=xmlHttp.responseText;


}
}


</script>
...全文
439 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
没有人懂这个问题?
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 for1096 的回复:]
404状态的话,楼主你有没检查过httpRequest交过去的那个脚本是不是放对位置了?
[/Quote]

GetData.aspx 我就是放在根目录
ajax的脚本是写在Default.aspx的页面里.在Default.aspx请求GetData.aspx里的函数response字符串
for1096 2010-09-01
  • 打赏
  • 举报
回复
404状态的话,楼主你有没检查过httpRequest交过去的那个脚本是不是放对位置了?
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
服务器反馈的信息是:

HTTP 错误 404 - Not Found。

--------------------------------------------------------------------------------
版本信息: ASP.NET Development Server 8.0.0.0
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
真是神了,在inprivate模式下就正常了
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 haidao919 的回复:]
我也觉得是IE缓存问题
[/Quote]
怎么解决缓存问题? 我在地址上加了时间戳,还是不行哦
haidao919 2010-09-01
  • 打赏
  • 举报
回复
我也觉得是IE缓存问题
cheniwantyou 2010-09-01
  • 打赏
  • 举报
回复
我嘞个去...还是404错误,我在其他项目都这样写AJAX啊,一模一样的套路,怎么这次就不行啊
Go 旅城通票 2010-09-01
  • 打赏
  • 举报
回复
404就是你请求的页面不存在,使用绝对路径试试
var url="/GetData.aspx?salesno="+salesno+"&_dc="+new Date().getTime();
hoojo 2010-09-01
  • 打赏
  • 举报
回复
<script language="javascript" type="text/javascript">

var xmlHttp;//声明个全局的变量,下面的回调还要用。不然是undefined
function getSalesName()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("您的浏览器不支持AJAX!");
return;
}

var salesno=$("<%=tbxsalesno.ClientID %>").value;

// document.write(salesno);

alert(salesno);//有木有值
var url="GetData.aspx?salesno="+salesno + "&timed=" + new Date();//去缓存

xmlHttp.onreadystatechange=stateChangedText;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function stateChangedText()
{
if (xmlHttp.readyState==4 ){
if(xmlHttp.status==200||xmlHttp.status==0){
$("<%=tbxsalesname.ClientID %>").value=xmlHttp.responseText;
} else alert('发生错误'+xmlHttp.responseText);//如果动态页发生错误输出看看是什么问题

}

}


</script>
Go 旅城通票 2010-08-31
  • 打赏
  • 举报
回复
就你的代码看不出什么问题,有可能就是一个IE缓存的问题

var url="GetData.aspx?salesno="+salesno+"&_dc="+new Date().getTime();//加时间戳防止缓存


状态判断也不需要这么麻烦,判断200就行了,就算转向了也是200状态
function stateChangedText() 
{
if (xmlHttp.readyState==4 ){
if(xmlHttp.status==200||xmlHttp.status==0)
$("<%=tbxsalesname.ClientID %>").value=xmlHttp.responseText;
else alert('发生错误'+xmlHttp.responseText);//如果动态页发生错误输出看看是什么问题

}
}
cheniwantyou 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kc8886 的回复:]
<%=tbxsalesno.ClientID %> 这种东西在js中无法执行 另想办法吧
[/Quote]

我是用ASP.NET当然可以执行
kc8886 2010-08-31
  • 打赏
  • 举报
回复
<%=tbxsalesno.ClientID %> 这种东西在js中无法执行 另想办法吧

52,798

社区成员

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

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