ajax应用

所属分类: 网络编程 / AJAX相关 阅读数: 996
收藏 0 赞 0 分享

<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和jsonp跨域的原理本质详解

跨域问题是我们在开发中经常会遇到的一个需求,下面这篇文章主要给大家介绍了关于ajax和jsonp跨域的原理本质,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

ajax获取json数据为undefined原因分析

Ajax 允许在不干扰 Web 应用程序的显示和行为的情况下在后台进行数据检索。这篇文章主要介绍了ajax获取json数据为undefined--原因,需要的朋友可以参考下
收藏 0 赞 0 分享

ajax实现用户名校验的传统和jquery的$.post方式(实例讲解)

下面小编就为大家分享一篇ajax实现用户名校验的传统和jquery的$.post方式的实例讲解,具有很好的参考价值,希望对大家有所帮助
收藏 0 赞 0 分享

ajax中用josnp接收josn数据的实现方法

下面小编就为大家分享一篇ajax中用josnp接收josn数据的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax跨域获取网站json数据的实例

下面小编就为大家分享一篇ajax跨域获取网站json数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

关于前端ajax请求的优雅方案(http客户端为axios)

这篇文章主要给大家介绍了关于前端ajax请求的优雅方案,本文http客户端为axios,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
收藏 0 赞 0 分享

快速解决ajax请求出错状态码为0的问题

下面小编就为大家分享一篇快速解决ajax请求出错状态码为0的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax实现改变状态和删除无刷新的实例

下面小编就为大家分享一篇ajax实现改变状态和删除无刷新的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ajax结合mysql数据库和smarty实现局部数据状态的刷新方法

下面小编就为大家分享一篇ajax结合mysql数据库和smarty实现局部数据状态的刷新方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Ajax客户端异步调用服务端的实现方法(js调用cs文件)

下面小编就为大家分享一篇Ajax客户端异步调用服务端的实现方法(js调用cs文件),具有很好的参考价值,希望对大家有所帮助
收藏 0 赞 0 分享
查看更多