使用原生ajax访问后台数据并将其展现在前端页面中(小菜鸟自己整理玩的,大神勿喷)...

  1. 首先你要有php的环境,关于php环境的搭建,php本地站点的搭建,此处不再重复请看这里:http://www.cnblogs.com/Gabriel-Wei/p/5950465.html
    我们把wamp打开,并且在Dreamweaver里面新建一个phpStudy站点。
    这篇文章我们需要两个文件,一个test.html前端的页面,一个tigong.php数据的提供页,下面分别进行介绍。
  2. tigong.php
    我们在Dreamweaver,phpStudy站点下面,新建一个tigong.php页面,里面内容如下:
    1 <?php
    2 echo"hello Tom";
    3 ?>

    为了让里面支持中文,我们加入这句话header("content-type:text/html;charset=utf-8"),此时的tigong.php如下

    <?php
    header("content-type:text/html;charset=utf-8");
    echo"Hello 李明";
    ?>


    用我们的浏览器跑一下,如图:

    将地址栏的信息地址复制一份,用postman测一下数据,如果不知道什么是postman,请自行百度,后面的数据交互文章会一直用到postman。(简而言之,postman就是测试一下给的接口能不能正常接收数据),如图:

    tigong.php文件准备好了,接下来我们写我们的前端页面。



  3. test.html 我们设置为点击按钮获取数据
    <!doctype html>
    <html>
    <head>
    <script type="text/javascript">
     window.onload=function(){
         var bt1=document.getElementById("bt1");
         var div1=document.getElementById("div1");
         //给bt1绑定事件,一会做onload完毕以后装在数据
         bt1.onclick=function(){
             //第一步:创建ajax对象
             //写兼容
             if(window.XMLHttpRequest){
                 var xmlHttp=new XMLHttpRequest();
                 }else{
                                   //兼容IE6
                     var xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")
                     }
             //第二步:获取要放送的数据。这个例子没有
             //第三步:设置一下要发送的方式和请求目标地址
             xmlHttp.open("GET","tigong.php");
             //第三个参数不写默认是异步
             
             //第四步:设置请求的编码
             xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
                      
             //第五步:监控整个过程,绑定onreadystatechange事件,总共调了四次0-1.1-2.2-3.3-4,我们需要的是4和200
             xmlHttp.onreadystatechange=function(){
                 if(xmlHttp.readyState==4 && xmlHttp.status==200){
                     //后台数据输出什么,我们的responseText就得到什么
                     div1.innerHTML=xmlHttp.responseText;
                     }
                 };
            //第六步:发送请求
            xmlHttp.send();
             };         
         };
    </script>
    <meta charset="utf-8">
    <style>
     #div1{
         background:#f00;
         color:#fff;
         font-weight:bold;
         width:200px;
         height:200px;
         }
    img{
        width:200px;
        }
    </style>
    <title>ajax</title>
    </head>
    <div id="div1">
      <!--在数据没有过来的时候,我们显示一张loading的图片,百度搜loading一大推-->
      <img src="images/1.gif"> 
    </div><br>
    <input type="button" id="bt1" value="点击获取数据">
    <body>
    </body>
    </html>

    如图所示:
      

    点击之后:

    可以看到,我们的php页面里面的数据回来了。

  4. 查看一下chrome的开发工具
     在network监控里面选择all,可以查看所有文件,如果没有,就刷新一下页面,


    点击tigong.php



 

转载于:https://www.cnblogs.com/Gabriel-Wei/p/5986459.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
采用ajax技术实现的图形验证码,在前端进行验证。验证码信息为图片。每一行代码均有注释,通俗易懂。 实现步骤: 1、创建web工程 2、在jsp页面,编写一个 3、编写一个servlet,在servlet产生图形验证码 ------------------------------------------------------------ //1、给客户端作出的回应是以图片的方式来回应 response.setContentType("image/jpeg"); //2、创建一个图形缓冲区,用于绘制图形 (宽度,高度,颜色的生成方案) BufferedImage image = new BufferedImage(800,600,BufferedImage.TYPE_INT_RGB); //3、创建一支画笔(图形设备接口)用于绘图 Graphics g = image.getGraphics(); //4、指定图笔的颜色 g.setColor(getColor(200,256)); //5、绘制一个矩形框,作为验证码的背景 g.fillRect(0,0, 800,600); //产生一个输出流,准备把图片以流的方式,输出到客户端 OutputStream out = response.getOutputStream(); //输出在图形缓冲区,绘制的图片 ImageIO.write(image,"jpg",out); //关闭流 out.close(); //随机生成背景颜色 private Random rd = new Random(); //产生随机数类 public Color getColor(int start,int end){ int r = start+rd.nextInt(end-start); int g = start+rd.nextInt(end-start); int b = start+rd.nextInt(end-start); return new Color(r, g, b);//根据三原色的值,随机在指定范围内,生成一种颜色 } --------------------------------------------------------------------------- 0-120 比较适合文字的颜色 100-200 适合干扰线条的颜色 200-255 适合背景颜色 --------------------------------------------------------------------------- 生成图片的文字: 1、先编写一个字符串,包含:数字,大小字母 private String s = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 2、在产生背景之后,编写如下代码,产生四个字符(并且,把生成字符,保存在session,在登录的时候用来做判断) String code=""; //用于保存生成的四个字符 for(int i=0;i<4;i++){ //生成一个随机数,它的取值范围,一定要在s这个字符串的长度范围之内 int index = rd.nextInt(s.length()); //2 //把index作为下标,来取得字符串的某一个字符 char c = s.charAt(index); //指定文字的颜色----深色段 g.setColor(getColor(0,120)); //创建一个字体 Font f = new Font("隶书",Font.ITALIC|Font.BOLD,60+rd.nextInt(60)); //把字体关联到画笔 g.setFont(f); code+=c; //把生成的字符连接成一个字符串 //把文字输出到图片上 g.drawString(String.valueOf(c), 100+i*80+rd.nextInt(100),200+rd.nextInt(150)); } request.getSession().setAttribute("code",code);//把生成的验证码信息,存储到session,登录的时候,用来作判断 ------------------

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值