ajax验证用记名的唯一性
var xmlobj; //定义XMLHttpRequest对象
function CreateXMLHttpRequest()
{
if(window.ActiveXObject) //如果当前浏览器支持Active Xobject,则创建ActiveXObject对象
{
xmlobj = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest) //如果当前浏览器支持XMLHttp Request,则创建XMLHttpRequest对象
{
xmlobj = new XMLHttpRequest();
}
}
function Validate() //主程序函数
{
alert("v1v1v1");
CreateXMLHttpRequest();
alert("v2v2v2"); //创建对象
var showurl = "register.do?name=" + document.getElementById ("userName").value; //构造URL
alert("v3v3v3");
xmlobj.open("GET", showurl, true); //调用register.jsp
alert("v4v4v4");
xmlobj.onreadystatechange = StatHandler; //判断URL调用的状态值并处理
xmlobj.send(null); //设置为不发送给服务器任何数据
}
function StatHandler() //用于处理状态的函数
{
alert("s1s1s1");
if(xmlobj.readyState == 4 && xmlobj.status == 200) //如果URL成功访问,则输出网页
{
alert("s2s2s2");
if(xmlobj.responseText == "1") //检查用户名是否有效
{
alert("s3s3s3");
document.getElementById("userNameStr").innerHTML = "<font color=RED>该用户名已被人使用</font>";
}
else if(xmlobj.responseText == "0")
{
alert("s4s4s4");
document.getElementById("userNameStr").innerHTML="<font color=GREEN>该用户名未被人使用</font>";
}
else
{
alert("s5s5s5");
document.getElementById("userNameStr").innerHTML = "<font color=RED>用户名验证程序出错</font>";
}
}
}
为什么action 获得到的用户名为空。求解。。。。。。??????????????
------解决方案--------------------xmlobj.open("GET", showurl, true); //调用register.jsp
自己看看这个jsp的返回值再说吧。 先调试服务器端程序。
------解决方案--------------------
先debug看看后台返回的用户名是否正确。。再看看ajax的返回。。。分步找原因。。