日期:2014-05-16  浏览次数:20725 次

ajax技术中的Session的使用
前台是我要对用户名和密码同时进行验证,因为是登录过的。我就把登录的用户名保存在Session["name"]中,所以在前台对密码进行修改的时候向服务器只发送了密码,问题是:前台无法接受来自后台请求的回调。也就是回调函数无法正常工作
代码如下:前台js代码
window.onload = init;
function init() {
    document.getElementById("oldpd").onblur = checkOldpd;
}
var xmlrequest;
function ctreatehttp() {
    if (window.XMLHttpRequest) //For general cases.
    {

        xmlrequest = new XMLHttpRequest();
    }
    else {
        if (window.ActiveXObject) {

            xmlrequest = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlrequest;
}
function checkOldpd() {
    xmlrequest = ctreatehttp();
    document.getElementById("oldpd").className = "thinking";
    if (xmlrequest == null) {
        alert("请求是个空值");
    }
    else {
        alert("0");
        var oldpd = document.getElementById("oldpd");
        var mima = escape(oldpd);
        var url = "checkoldpd.aspx?pd=" + mima;
        xmlrequest.onreadystatechange = handle;
        alert("1");
        xmlrequest.open("GET", url, true);
        xmlrequest.send(null);
    }
}
function handle() {
    if (xmlrequest.readyState == 4) {
        if (xmlrequest.status == 200) {
            alert("yes");
            var img = document.getElementById("oldpd");
            var str = xmlrequest.responseText;
            alert(str);
            if (str == "ok") {
                img.className = "approved";
            }

            else {
                img.className = "denied";
                img.focus();
                img.select();
            }