有一段时间不写关于AJAX的东西了,最近和同学参加个比赛,要做一个类似博客的东西,用到了AJAX的东西,在写东西之前为了再熟悉一下AJAX,自己做了个关于AJAX的小事例与大家分享一下。

  AJAX在js里可谓是一个牛气冲天的一个词,我刚学的时候有点望名生畏。对于初学者来说AJAX看似很难,图书馆里有些关于AJAX的教程比板砖都厚,看了就不想学。但当你真正长用的东西其实就那么写。在这就不扯那些书上扯的AJAX的历史考古的淡了,不然的话会碎的,你懂的。OK直入正题。

  在这呢我主要说一下AJAX的用法,原理就不多说了。

  1.你要用AJAX首先得会js吧,这个不用多说。

    首先你得NEW一个AJAX的对象,类必须得事例化才能使用,这个大家都知道对吧

    第一步:var oAjax = new XMLHttpRequest();

    但是为了兼容IE6这么蛋疼的浏览器一般这么写:

     if(window.XMLHttpRequest)

     {

        var oAjax = new XMLHttpRequest();

     }

     else

     {

      //IE

      var oAjax=new ActiveXObject("Microsoft.XMLHTTP");

     }

    到这为止对象就事例化好了。

  2.第二步咱得给服务器连接起来吧,这是必须的啊;

  用open();用法是这样的:open(传输方式,文件地址,同步还是异步(默认异步))

    oAjax.open('get','ajax.php?hehe='+sValue,true);

  3.得发送请求吧:

    oAjax.send();

  4.就是接收返回值了,就不废话了,直接看代码吧:

    oAjax.onreadystatechange=function()
    {

    //oAjax.readyState 记录步骤
      if(oAjax.readyState == 4)
      {
        if(oAjax.status == 200)
        {
          oDiv.innerHTML = oAjax.responseText;
        }
        else
        {
          alert("失败");
        }
      }
      else
      {
        alert(oAjax.readyState);//记录步骤
      }
    }

 到此为止AJAX就OK了:

下面是我实验的完整事例:

html代码如下:

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
window.onload=function()
{
var oBtn1=document.getElementById('btn1');
var oInput=document.getElementById("hehe");
var oDiv=document.getElementById("div1");
oBtn1.onclick=function()
{
var sValue=oInput.value;
//alert(sValue);
//1.创建Ajax对象
//只兼容非IE6的浏览器
if(window.XMLHttpRequest)
{
var oAjax=new XMLHttpRequest();
}
else
{
//IE6
var oAjax=new ActiveXObject('Microsoft.XMLHTTP');
}
//alert(oAjax);
//2.连接服务器
//open(传输方式,文件地址,同步还是异步(默认异步))
oAjax.open('get','ajax.php?hehe='+sValue,true); //3.发送请求
oAjax.send(); //4.接收返回
oAjax.onreadystatechange=function()
{ //oAjax.readyState 记录步骤
if(oAjax.readyState == 4)
{
if(oAjax.status == 200)
{
oDiv.innerHTML = oAjax.responseText;
}
else
{
alert("失败");
}
}
else
{
alert(oAjax.readyState);//记录步骤
}
}
//oAjax.send(); }
}
</script>
</head> <body>
<form method="" action="ajax.php">
呵呵:<input type="text" size=20 name="hehe" id="hehe">
<input type="button" value="提交" id="btn1">
</form>
<div id="div1">
</div>
</body>
</html>

后台PHP代码ajax.php

 <?php
$hehe=$_GET['hehe'];
echo $hehe;
?>

简单的AJAX用法事例到此为止,特为初学者而写,大牛可飘过……

PHP中AJAX的使用(完整实例【大牛可飘过】)的更多相关文章

  1. spring mvc 和ajax异步交互完整实例

    Spring MVC 异步交互demo: 1.jsp页面: <%@ page language="java" contentType="text/html; cha ...

  2. php中ajax使用实例

    php中ajax使用实例 一.总结 1.多复习:这两段代码都挺简单的,就是需要复习,要多看 2.ajax原理:ajax就是部分更新页面,其实还在的html页面监听到事件后,然后传给服务器进行操作,这里 ...

  3. thinkphp中ajax使用实例(thinkphp内置支持ajax)

    thinkphp中ajax使用实例(thinkphp内置支持ajax) 一.总结 1.thinkphp应该是内置支持ajax的,所以请求类型里面才会有是否是ajax // 是否为 Ajax 请求 if ...

  4. JavaWeb中点赞功能的实现及完整实例

    实现原理1.功能描述:一个用户对同一文章只能点赞一次,第二次就是取消赞2.建立一个点赞表great,字段有文章ID(aid),点赞用户ID(uid)3.当有用户进行点赞行为时,使用aid和uid搜索点 ...

  5. Ajax 中Post 与 Get的 实例

    Ajax中 Post 与 Get 实例   Ajax的POST实例,index.html <html> <head> <script type="text/ja ...

  6. javascript中ajax post实例详解

    一,原生态的XMLHttpRequest 代码如下 复制代码 <script language="javascript">         function savei ...

  7. 超详细的php用户注册页面填写信息完整实例(附源码)

    这篇文章主要介绍了一个超详细的php用户注册页面填写信息完整实例,内容包括邮箱自动匹配.密码强度验证以及防止表单重复等,小编特别喜欢这篇文章,推荐给大家. 注册页面是大多数网站必备的页面,所以很有必要 ...

  8. 前后端API交互数据加密——AES与RSA混合加密完整实例

    前言 前段时间看到一篇文章讲如何保证API调用时数据的安全性(传送门:https://blog.csdn.net/ityouknow/article/details/80603617),文中讲到利用R ...

  9. jQuery中ajax的4种常用请求方式

    jQuery中ajax的4种常用请求方式: 1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数 ...

随机推荐

  1. 从问题看本质:socket到底是什么?

    一.问题的引入——socket的引入是为了解决不同计算机间进程间通信的问题 1.socket与进程的关系 1).socket与进程间的关系:socket   用来让一个进程和其他的进程互通信息(IPC ...

  2. Mysql远程访问

    命令行: mysql -h 192.168.1.145 -u root -p 1.初始化root密码 进入mysql数据库 1mysql>update user set password=PAS ...

  3. java排序学习笔记

    前面写了js的排序实现,总得玩玩java的哈. 同样,冒泡.选择.快速(这三个之前实现过也写过文章).堆排序,然后做比较. 主要遇到的难点: - -||想轻松点写个封装计时的逻辑,不想每调用一个排序就 ...

  4. python学习笔记--基础概要

    1.python的int类型没有大小限制(或者说只受机器内存限制),str类型用单引号或者双引号都行,只要对称就可以了.(注意固定性) 2.使用[]表示存取字符串等序列的某一项(索引从0开始) 3.类 ...

  5. java 过滤器Filter

    一.首先在web.xml里进行拦截过滤 <filter>        <filter-name>platformServiceAgreementFilter</filt ...

  6. wamp环境 安装memcache 扩展

    这两天在研究tp的memcached缓存 总是遇到坑 在网上找了很多教程看终于弄出来了现在拿出来分享 首先安装memcached下载memcache压缩包 使用cmd以管理员命令去安装 E:\wamp ...

  7. 对session的理解

    java Servlet API引入session 机制来跟踪客户的状态,session指的是在一段时间内,单个客户和web服务器之间一连串的交互过程,在一个session中,一个客户可能会多次请求同 ...

  8. NEsper Nuget包

    Esper是专门进行复杂事件处理(CEP)的流处理平台,Java版本为Esper,.Net版本为NEsper.Esper & NEsper可以方便开发者快速开发部署处理大容量消息和事件的应用系 ...

  9. Android安全开发之浅谈密钥硬编码

    Android安全开发之浅谈密钥硬编码 作者:伊樵.呆狐@阿里聚安全 1 简介 在阿里聚安全的漏洞扫描器中和人工APP安全审计中,经常发现有开发者将密钥硬编码在Java代码.文件中,这样做会引起很大风 ...

  10. SQLite3

    记录一个基础的IOS下SQLite的例子: @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; NSAr ...