原生Ajax 和jQuery Ajax的区别示例分析


Posted in Javascript onDecember 17, 2014

前言:这次介绍的是利用ajax与后台进行数据交换的小例子,所以demo必须通过服务器来打开。服务器环境非常好搭建,从网上下载wamp或xampp,一步步安装就ok,然后再把写好的页面放在服务器中指定的位置。打开时,在浏览器地址栏输入“localhost/指定页面”或者“127.0.0.1/指定页面”打开。

下面列出demo的HTML、PHP、原生ajax 、jq ajax代码。

HTML代码:

<!doctype html>

<html>

<head>

    <title>ajax示例</title>

    <meta charset='utf-8' />

    <link rel="stylesheet" type="text/css" href="css/common.css" />

    <style type="text/css">

        .main{height:400px;width:800px;margin:100px auto 0;border:1px solid #000;}

        .list{height:400px;width:200px;float:left;background:#ddd;}

        .inf{height:400px;width:600px;float:right;background:#ccc;text-align:center;}

        .list li{width:200px;text-align:center;margin:50px 0 0;font-size:24px;cursor: pointer;

        }

        .inf img{width:360px;height:270px;margin:15px auto;}

        .inf p{width:580px;text-align:left;text-indent:2em;font-size:14px;margin:0 10px;}

    </style>

</head>

<body>

    <div class='main'>

        <div class='list' id='list'>

            <ul>

                <li name='spring' id='spring'>春</li>

                <li name='summer' id='summer'>夏</li>

                <li name='fall' id='fall'>秋</li>

                <li name='winter' id='winter'>冬</li>

            </ul>

        </div>

        <div class='inf' id='inf'>

        <!--要插入的内容-->

        </div>

    </div>

</body>

<script type="text/javascript" charset="utf-8" src="js/jQuery.js"></script>

</html>

PHP代码:

<?php

$details = array (

    'spring'    =>    "<img src='images/spring.jpg' alt='' /><p>人间四月芳菲尽,山寺桃花始盛开</p>",

    'summer'    =>    "<img src='images/summer.jpg' alt='' /><p>水晶帘动微风起,满架蔷薇一院香</p>",

    'fall'    =>    "<img src='images/fall.jpg' alt='' /><p>金井梧桐秋叶黄,珠帘不卷夜来霜</p>",

    'winter'        =>    "<img src='images/winter.jpg' alt='' /><p>梅须逊雪三分白,雪却输梅一段香</p>"

);

echo $details[$_REQUEST['LiName']];

?>

原生ajax:

<script type="text/javascript">

    var lis = document.getElementById('list').getElementsByTagName('li');

    window.onload = initPage;

    function initPage() {

        for (var i=0; i<lis.length; i++) {

            txt = lis[i];

            txt.onclick = function () {

                getDetails(this.id);

            }

        }

    }

    function creatRequest() {

        try {

            request = new XMLHttpRequest();

        }

        catch (tryMS) {

            try {

                request = new ActiveXObject("Msxml2.XMLHTTP");

            }

            catch (otherMS) {

                try {

                    request = new ActiveXObject("Miscrosoft.XMLHTTP");

                }

                catch (failed) {

                    request = null;

                }

            }

        }

        return request;

    }

    function getDetails(itemName) {

        request = creatRequest();

        if (request == null) {

            alert('没有成功创建请求')

            return;

        }

        var url = "getDetails.php?LiName="+escape(itemName);

        request.open("GET",url,true);

        request.onreadystatechange = displayDetails;

        request.send(null);

    }

    function displayDetails() {

        if (request.readyState == 4) {

        if (request.status == 200) {

            detailDiv = document.getElementById("inf");

            detailDiv.innerHTML = request.responseText;

        }

      }

    }   

</script>

JQ ajax:

<script type="text/javascript">

$('#list li').click ( function () {                       

        $.ajax({                           

            type:'GET',                            

            data:'',                           

            url:"getDetails.php?LiName="+this.id,                           

            success:function(data){                                

                $('#inf').html(data);                                

            },

            dataType:'text',

            error:function (){                

                alert("失败!");            

            }

        })                    

    });

</script>
Javascript 相关文章推荐
关于IE7 IE8弹出窗口顶上
Dec 22 Javascript
Jquery $when done then的用法详解
May 20 Javascript
原生JS实现的双色球功能示例
Feb 02 Javascript
Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
May 10 Javascript
解决angular2在双向数据绑定时[(ngModel)]无法使用的问题
Sep 13 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
Nov 30 Javascript
微信小程序HTTP请求从0到1封装
Sep 09 Javascript
vue.js实现只能输入数字的输入框
Oct 19 Javascript
vue中监听路由参数的变化及方法
Dec 06 Javascript
extjs图表绘制之条形图实现方法分析
Mar 06 Javascript
package.json中homepage属性的作用详解
Mar 11 Javascript
jquery实现点击左右按钮切换图片
Jan 27 jQuery
jQuery中;function($,undefined) 前面的分号的用处
Dec 17 #Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
Dec 17 #Javascript
javascript实现根据身份证号读取相关信息
Dec 17 #Javascript
node.js中的fs.appendFile方法使用说明
Dec 17 #Javascript
javascript操作数组详解
Dec 17 #Javascript
node.js中的fs.appendFileSync方法使用说明
Dec 17 #Javascript
javascript实现节点(div)名称编辑
Dec 17 #Javascript
You might like
PHP 简易输出CSV表格文件的方法详解
2013/06/20 PHP
php实现的数字验证码及数字运算验证码
2015/07/30 PHP
基于php实现的php代码加密解密类完整实例
2016/10/12 PHP
YII2 实现多语言配置的方法分享
2017/01/11 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
2017/11/17 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
datePicker——日期选择控件(with jquery)
2007/02/20 Javascript
摘自百度的图片轮换效果代码
2007/11/19 Javascript
15个款优秀的 jQuery 图片特效插件推荐
2011/11/21 Javascript
js中AppendChild与insertBefore的用法详细解析
2013/12/16 Javascript
javascript中的undefined和not defined区别示例介绍
2014/02/26 Javascript
jquery实现textarea 高度自适应
2015/03/11 Javascript
js动态创建及移除div的方法
2015/06/03 Javascript
JavaScript中join()方法的使用简介
2015/06/09 Javascript
详解参数传递四种形式
2015/07/21 Javascript
JS实现自动切换文字的导航效果代码
2015/08/27 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
JavaScript中创建原子的方法总结
2018/08/26 Javascript
vue调试工具vue-devtools安装及使用方法
2018/11/07 Javascript
python使用socket连接远程服务器的方法
2015/04/29 Python
Python构建XML树结构的方法示例
2017/06/30 Python
Python操作qml对象过程详解
2019/09/26 Python
分享8点超级有用的Python编程建议(推荐)
2019/10/13 Python
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
法学毕业生自我鉴定
2013/11/08 职场文书
询价采购方案
2014/06/09 职场文书
社区清明节活动总结
2014/07/04 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
群众路线专项整治方案
2014/10/27 职场文书
个人先进材料范文
2014/12/30 职场文书
我们的节日中秋节活动总结
2015/03/23 职场文书
青春雷锋观后感
2015/06/10 职场文书
介绍信应该怎么开?
2019/04/03 职场文书
Python中rapidjson参数校验实现
2021/07/25 Python