一简单AJAX程序为什么总是出问题? 说明一点:在content方法中加alert(),只能在if(xmlr.readystate==4)上面加,不能在里面的IF加,嵌套IF就更不行了,不知道怎么回事,如果在IF或IF嵌套里加alert(),在IE里点击"测试"按钮就没反映,什么都出现,请问这是怎么回事啊???我只想从服务端得到数据在AJAX代码里获取,并显示出来,为什么不行呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也就是下面的这个if语句根本就没有执行可以调试一下看看到底是什么原因。ajax 开发建议使用 dwr.jar 这个框架封装的比较好 使用起来也是比较方便的 if(xmlr.status==200){ alert(xmlr.responseText); } 而且 url 少了 一个 & 符号 xmlr.send(); 改成xmlr.send(null);var url = " <%=request.getContextPath()%>/ajax?name="+name+"password="+pass;改成 var url = "<%=request.getContextPath()%>/ajax?name='"+name+"'&password='"+"pass'"; alert(xmlr.readystate);alert(xmlr.status); 第一: 你的语句错误URL 少"&"第二: 你alert() 不应该在if里,应该在得到请求结果后的响应函数里第三: xmlr.open("GET",url,true); xmlr.send(); xmlr.onreadystatechange = content; 这个地方有毛病,正规写法: xmlr.open("GET",url,true); xmlr.onreadystatechange = content; xmlr.send(); doget方法里什么也没有返回,你客户端怎么能接受到东西呢网上有这样的例子,可以先分析一下别人的,再来查找你的问题 http://hi.baidu.com/wdqz/blog/item/14301ece4669de3db700c8fd.html 给你一个简单的ajax的小例子:<html><script language=javascript>var model=0;//检查唯一性function showButton(){ document.getElementById("showspan").innerHTML="<input type=button value=唯一性检查 name=B3 id=b3 onclick=usercheck(1)>";}var http_request=false;function send_request(url){ http_request=false; //XMLHttpRequest对象初始化 if(window.XMLHttpRequest) { //Mozilla浏览器 http_request=new XMLHttpRequest(); if(http_request.overrideMimeType) { http_request.overrideMimeType("text/xml"); } } else if(window.ActiveXObject) { //IE浏览器 try { http_request=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { http_request=new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { } } } if(!http_request)//异常,创建对象实例失败 { window.alert("不能创建XMLHttpRequest对象实例"); return false; } http_request.onreadystatechange=processRequest; //确定发送请求的方式和URL以及是否同步执行下段代码 http_request.open("get",url,true); http_request.send(null);}function processRequest(){ if(http_request.readyState==4)//判断对象的状态4代表已经完成 { if(http_request.status==200)//判断信息已经成功返回 { //alert(http_request.responseText); if(model==1) { list = http_request.responseText; document.getElementById("showspan").innerHTML=list; } else if(model==2) { document.getElementById("showspan1").innerHTML=http_request.responseText; } } else { alert("您所请求的页面异常"); } }}function usercheck(aa){ model=aa; var f=document.form1; var username = f.username.value; if(username=="") { window.alert("用户名不能为空"); f.username.focus(); return false; } else { send_request('loginaction.do?method=checkName&username='+username); }}function showRoles(obj,aa){ model=aa; document.getElementById(obj).parentNode.style.display=""; document.getElementById(obj).innerHTML="正在读取数据....."; currentPos=obj; send_request("test1.jsp?playPos="+obj);}</script><body><form method="POST" action="loginaction.do" name="form1"><input type=hidden name="method" value="checkLogin"> 用 户 名:<input type="text" name="username" size="20" onfocus="showButton()"><span id="showspan"></span><br> 用户密码:<input type="password" name="password" size="20"><br> <input type="submit" value="提交" name="B1"> <input type="reset" value="重置" name="B2"><br></form><p><a href="javascript:void(0)" onclick="showRoles('showspan1',2)">用户注册</a></p><span id="showspan1"></span></body></html> JAVA交流与学习群:45609427 挑战技术,超越自我!! 18楼说得对!加我QQ给你世界上最简单的Ajax例子!258353899 映射访问WEB-INF下的jsp文件问题 用jfreechart生成了雷达图,怎样在每个角上加上文字和对应的度数? 请教字符串与日期之间的转换,怎样使日期增加 如何写一个给 c 调用的java程序 所有的分数请大家进来讨论,一个2006届本科毕业生和从事的对日外包 请教一个关于层定位的问题! 这种做好好吗,影响服务器性能吗(关于分页) jsp中调用ActiveX函数的问题 寻求一个JSP,SERVLET,JB共享连接池的例子!!!![!立刻给分!] 如何利用jdk和Tomcat搭建服务器的运行环境? 一個方法內不能偉值﹐這是為什么? Jsp和Servlet对象一一对应问题?
可以调试一下看看到底是什么原因。ajax 开发建议使用 dwr.jar 这个框架封装的比较好 使用起来也是比较方便的
if(xmlr.status==200){
alert(xmlr.responseText);
}
var url = " <%=request.getContextPath()%>/ajax?name="+name+"password="+pass;
改成 var url = "<%=request.getContextPath()%>/ajax?name='"+name+"'&password='"+"pass'";
alert(xmlr.status);
xmlr.send();
xmlr.onreadystatechange = content;
这个地方有毛病,正规写法:
xmlr.open("GET",url,true);
xmlr.onreadystatechange = content;
xmlr.send();
<html>
<script language=javascript>
var model=0;
//检查唯一性
function showButton(){
document.getElementById("showspan").innerHTML="<input type=button value=唯一性检查 name=B3 id=b3 onclick=usercheck(1)>";
}var http_request=false;
function send_request(url)
{
http_request=false;
//XMLHttpRequest对象初始化
if(window.XMLHttpRequest)
{
//Mozilla浏览器
http_request=new XMLHttpRequest();
if(http_request.overrideMimeType)
{
http_request.overrideMimeType("text/xml");
}
}
else if(window.ActiveXObject)
{ //IE浏览器
try
{
http_request=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
http_request=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
}
}
}
if(!http_request)//异常,创建对象实例失败
{
window.alert("不能创建XMLHttpRequest对象实例");
return false;
}
http_request.onreadystatechange=processRequest;
//确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("get",url,true);
http_request.send(null);
}function processRequest()
{
if(http_request.readyState==4)//判断对象的状态4代表已经完成
{
if(http_request.status==200)//判断信息已经成功返回
{
//alert(http_request.responseText);
if(model==1)
{
list = http_request.responseText;
document.getElementById("showspan").innerHTML=list;
}
else if(model==2)
{
document.getElementById("showspan1").innerHTML=http_request.responseText;
}
}
else
{
alert("您所请求的页面异常");
}
}
}function usercheck(aa)
{
model=aa;
var f=document.form1;
var username = f.username.value;
if(username=="")
{
window.alert("用户名不能为空");
f.username.focus();
return false;
}
else
{
send_request('loginaction.do?method=checkName&username='+username);
}
}function showRoles(obj,aa)
{
model=aa;
document.getElementById(obj).parentNode.style.display="";
document.getElementById(obj).innerHTML="正在读取数据.....";
currentPos=obj;
send_request("test1.jsp?playPos="+obj);
}
</script><body><form method="POST" action="loginaction.do" name="form1">
<input type=hidden name="method" value="checkLogin">
用 户 名:<input type="text" name="username" size="20" onfocus="showButton()"><span id="showspan"></span><br>
用户密码:<input type="password" name="password" size="20"><br>
<input type="submit" value="提交" name="B1"> <input type="reset" value="重置" name="B2"><br>
</form><p><a href="javascript:void(0)" onclick="showRoles('showspan1',2)">用户注册</a></p>
<span id="showspan1"></span>
</body>
</html>
挑战技术,超越自我!!