网络编程 
首页 > 网络编程 > 浏览文章

ajax应用

(编辑:jimmy 日期: 2024/11/14 浏览:3 次 )

<DIV class=box id=top_bar>Web Tools--Ajax Version </DIV><BR>
<DIV class="box general">&nbsp;&nbsp;&nbsp;&nbsp;天气预报: <INPUT id=Weather size=17
value=北京> &nbsp; <INPUT onclick=getWeather() type=button value="提 交" name=submit> &nbsp; <SPAN
id=Disp_Weather></SPAN></DIV>
<DIV class="box general">&nbsp;&nbsp;IP地址查询: <INPUT id=Ip maxLength=17 size=17
value=127.0.0.1> &nbsp; <INPUT onclick=getIp() type=button value="提 交" name=submit> &nbsp; <SPAN
id=Disp_IPArea></SPAN></DIV>
<DIV class="box general">手机归属查询: <INPUT id=Mobile maxLength=15 size=17 value=13>
&nbsp; <INPUT onclick=getMobile() type=button value="提 交"> &nbsp; <SPAN
id=Disp_MobileArea></SPAN></DIV>
<SCRIPT language=JavaScript type=text/javascript>
            chgBtnStyle();
        </SCRIPT>
//针对不同的浏览器获取指定的id对象
function getObj(objID) {
    return document.all ? document.all[objID] : document.getElementById(objID);
}
var req;
//使用xmlrequest对象
function createXHR() {
    try {
        req = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e) {
        try {
            req = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E) {
            req = false;
        }
    }
    if (!req && typeof XMLHttpRequest != "undefined") {
        req = new XMLHttpRequest();
    }
}
function getWeather() {
    createXHR();
    req.open("GET", "weather.asp?City=" + getObj("Weather").value, true);
    req.send();
    req.onreadystatechange = handleStateChange1;
}
function handleStateChange1() {
    if (req.readyState<4){getObj("Disp_Weather").innerText = "正在查询["+getObj("Weather").value+"]天气状况..."}
    else if (req.readyState == 4 && req.status == 200) {
        getObj("Disp_Weather").innerText = req.responseText;
    } else {
        getObj("Disp_Weather").innerText = "\u67e5\u8be2\u8fc7\u7a0b\u51fa\u73b0\u8fc7\u7a0b\uff0c\u8bf7\u91cd\u8bd5\u6216\u8054\u7cfb\u7ba1\u7406\u5458\uff01";
    }
}
function checkip() {
    var ipArray, ip, j;
    ip = getObj("Ip").value;
    if (/[^\d\.]/.test(ip)) {
        return false;
    }
    ipArray = ip.split(".");
    if (ipArray.length != 4) {
        return false;
    }
    for (var i = 0; i < 4; i++) {
        if (ipArray[i].length == 0 || ipArray[i] > 255) {
            return false;
        }
    }
    return true;
}
function getIp() {
    if (checkip()) {
        createXHR();
        req.open("GET", "IpSearch.asp?IP=" + getObj("Ip").value, true);
        req.send();
        req.onreadystatechange = handleStateChange;
    } else {
        getObj("Disp_IPArea").innerText = "\u8fd4\u56de\u9519\u8bef\uff1a\u4e0d\u662f\u6b63\u786e\u7684ip";
    }
}
function handleStateChange() {
    if (req.readyState<4){getObj("Disp_IPArea").innerText = "正在查询ip["+getObj("Ip").value+"]..."}
    else if (req.readyState == 4 && req.status == 200) {
        getObj("Disp_IPArea").innerText = req.responseText;
    } else {
        getObj("Disp_IPArea").innerText = "\u67e5\u8be2\u8fc7\u7a0b\u51fa\u73b0\u9519\u8bef\uff0c\u8bf7\u91cd\u8bd5\u6216\u8054\u7cfb\u7ba1\u7406\u5458\uff01";
    }
}
function checkMobile() {
    var sMobile = getObj("Mobile").value;
    if (!(/^13[0-9]\d{4,8}$/.test(sMobile))) {
        return false;
    }
    return true;
}
function getMobile() {
    if (checkMobile()) {
        createXHR();
        req.open("GET", "MobileSearch.asp?Mobile=" + getObj("Mobile").value, true);
        req.send();
        req.onreadystatechange = handleStateChange2;
    } else {
        getObj("Disp_MobileArea").innerText = "\u8fd4\u56de\u9519\u8bef\uff1a\u4e0d\u662f\u5b8c\u6574\u768411\u4f4d\u624b\u673a\u53f7\u6216\u8005\u6b63\u786e\u7684\u624b\u673a\u53f7\u524d\u4e03\u4f4d";
    }
}
function handleStateChange2() {
    if (req.readyState<4){getObj("Disp_MobileArea").innerText = "正在查询手机号码["+getObj("Mobile").value+"]..."}
    else if (req.readyState == 4 && req.status == 200) {
        getObj("Disp_MobileArea").innerText = req.responseText;
    } else {
        getObj("Disp_MobileArea").innerText = "\u67e5\u8be2\u8fc7\u7a0b\u51fa\u73b0\u9519\u8bef\uff0c\u8bf7\u91cd\u8bd5\u6216\u8054\u7cfb\u7ba1\u7406\u5458\uff01";
    }
}

function chgBtnStyle(){
    var btn=document.getElementsByTagName("input")
    for(var i=0;i<btn.length;i++){
        if(btn[i].type=='button'){
           btn[i].className="btnStyle";
        }
    }
}

上一篇:AJAX入门之XMLHttpRequest慨述
下一篇:用javascript实现页面无刷新更新数据
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。