ajax 前后端数据传输demo实例

先写html页面(test.html):

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="utf8">
 5     <title>ajax</title>
 6     <script type="text/javascript" src=‘http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js‘></script>
 7 </head>
 8 <body>
 9 <div id="test">test之前的文字</div>
10 <button id=‘button‘>我变!</button>
11 <script type="text/javascript">
12     $(document).ready(function(){
13         var sta=0;
14   $("#button").click(function(){
15   sta==0?(function(){
16       sta=1;//ajax参数的意思分别是请求的地址,发送请求的类型,发送数据,发送数据的类型(这里最好用双引号将字符串引起来),成功后的回调函数
17        $.ajax({url:"test.php",type:"post",data:{"status":0},dataType:"json",success:function(data){
18     $("#test").html(data.t1);
19   }})})():(function(){
20           sta=0;
21        $.ajax({url:"test.php",type:"post",data:{"status":1},dataType:"json",success:function(data){
22     $("#test").html(data.t2);
23   }})})();
24 });
25 });
26 </script>
27 </body>
28 </html>

然后见一个同文件夹下的test.php文件

 1 <?php
 2 header("Content-type:text/html;charset=utf-8");
 3   $status=$_POST[‘status‘];
 4  if(0==$status){
 5 //下面要注意和上面的datatype一致,这里使用json
 6 //不然可能出现即使成功了也不会调用succes回调函数
 7 $info = array("t1"=>"之后的文字");
 8 $userinfo = json_encode($info);
 9      echo $userinfo;
10  }else{
11      $info = array("t2"=>"之前的文字");
12 $userinfo = json_encode($info);
13      echo $userinfo;
14  }
15 ?>

这里的话就没有写css了 只是简单的实现一下功能和说明一下常常遇到的问题而已,如果你有兴趣的话,可以尝试写个漂亮的界面。

下面用其他的ajax的其他方法写一下 post方法(test.html):

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="utf8">
 5     <title>ajax</title>
 6     <script type="text/javascript" src=‘http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js‘></script>
 7 </head>
 8 <body>
 9 <div id="test">test之前的文字</div>
10 <button id=‘button‘>我变!</button>
11 <script type="text/javascript">
12     $(document).ready(function(){
13         var sta=0;
14   $("#button").click(function(){
15   sta==0?(function(){
16       sta=1;
17        $.post("test.php",{"status":0},function(data){
18     $("#test").html(data.t1);
19   },"json")})():(function(){
20           sta=0;
21        $.post("test.php",{"status":1},function(data){
22     $("#test").html(data.t2);
23   },"json")})();
24 });
25 });
26 </script>
27 </body>
28 </html>

服务器端还是一样(test.php):

 1 <?php
 2 header("Content-type:text/html;charset=utf-8");
 3   $status=$_POST[‘status‘];
 4  if(0==$status){
 5 //下面要注意和上面的datatype一致,这里使用json
 6 //不然可能出现即使成功了也不会调用succes回调函数
 7 $info = array("t1"=>"之后的文字");
 8 $userinfo = json_encode($info);
 9      echo $userinfo;
10  }else{
11      $info = array("t2"=>"之前的文字");
12 $userinfo = json_encode($info);
13      echo $userinfo;
14  }
15 ?>

用get方法实现一下:

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="utf8">
 5     <title>ajax</title>
 6     <script type="text/javascript" src=‘http://apps.bdimg.com/libs/jquery/1.6.4/jquery.min.js‘></script>
 7 </head>
 8 <body>
 9 <div id="test">test之前的文字</div>
10 <button id=‘button‘>我变!</button>
11 <script type="text/javascript">
12     $(document).ready(function(){
13         var sta=0;
14   $("#button").click(function(){
15   sta==0?(function(){
16       sta=1;
17        $.get("test.php",{"status":0},function(data){
18     $("#test").html(data.t1);
19   },"json")})():(function(){
20           sta=0;
21        $.get("test.php",{"status":1},function(data){
22     $("#test").html(data.t2);
23   },"json")})();
24 });
25 });
26 </script>
27 </body>
28 </html>

test.php:

 1 <?php
 2 header("Content-type:text/html;charset=utf-8");
 3   $status=$_GET[‘status‘];//这里是$_GET
 4  if(0==$status){
 5 //下面要注意和上面的datatype一致,这里使用json
 6 //不然可能出现即使成功了也不会调用succes回调函数
 7 $info = array("t1"=>"之后的文字");
 8 $userinfo = json_encode($info);
 9      echo $userinfo;
10  }else{
11      $info = array("t2"=>"之前的文字");
12 $userinfo = json_encode($info);
13      echo $userinfo;
14  }
15 ?>

好了,如果感兴趣,可以通过多练几遍就熟了。很简单的一个demo例子。

时间: 2024-10-20 03:40:36

ajax 前后端数据传输demo实例的相关文章

Django 前后端数据传输、ajax、分页器

内容目录: 一.MTV与MVC模式 二.多对多表三种创建方式 三.前后端传输数据 四.Ajax ? 五.批量插入数据 六.自定义分页器 一.MTV与MVC模式 MTV模型 Django就是基于MTV模型的框架,其中: M:模型层 models.py T:templates V:视图层 views MVC模型 M:模型层 models V:视图层 views C:控制器 controller 本质:django的MTV也是MVC 二.多对多表三种创建方式 第一种:Django ORM自动帮创建 c

SSM-网站后台管理系统制作(4)---Ajax前后端交互

前提:Ajax本身就为前后端交互服务的,实现功能:用户输入信息,实时判断用户的情况,这也是现在登录界面普遍流行的做法.前端js通过注释识别Controller层,该层查询返回,和之前Google验证码有点像. 学习教程:http://how2j.cn/ 菜鸟教程 上面都有讲解, 前端Ajax代码 1 </script> 2 3 <script language="javascript" type="text/javascript"> 4 $(

SSM+Vue前后端分离Demo

网上找了一份实习,需要做这几道题,所以用了两天时间,顺便整理一下SSM+Vue的前后端的搭建, 项目地址:https://github.com/LIRUILONGS/SSM-Vue-.git 题目是这样的: 题一:1.数据单表增删改查,分页查询.数据字段不少于3个.2.项目框架使用SSM架构,不允许使用逆向工程生成项目.3.数据库使用MYSQL(版本号5.6或5.7)使用maven管理jar包. 题二:1.数据两张表增删改查,两张表带有逻辑关系,分页查询.数据字段不少于3个.2.项目框架使用SS

SSM框架用JSON进行前后端数据传输

一个根据用户id查找用户信息的简单功能,使用JSON进行数据的传输 前端代码 这里用bootstrap做简单的样式美化,中间留了个div用来异步的显示查询结果,ajax进行前端的数据传输(class内容可以无视,只有美化效果): <form class="form-horizontal" > <label for="firstname" class="col-sm-2 control-label">用户ID</lab

ajax前后端交互

目标 1. 理解ajax基本使用 2. 会使用XMLHttpRequest对象实现数据交互 3. 了解onreadystatechange服务器响应信息 4. 会使用FormData对象上传文件 5. 了解upload事件对象 知识要点 1.ajax使用 - ajax是:  *Ajax* 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML) - 新建XMLHttpRequest对象: ```js let xhr = new XMLHttp

JQuery ajax 前后端传值介绍

https://jingyan.baidu.com/album/ca41422f0bf08e1eae99ed04.html?picindex=5 现在我们话不多说,开始仔细讲解一下我们ajax内部传递的参数: 其中 1.async ,是一个布尔型变量,这个是同步异步的设置参数,默认为异步操作,也就是true,如果要设置为同步的话,需要设置为false. 2 data 这个就是我们要传值的形式了,必须采用key-value方式进行传值.如果传值为数组格式,会产生同一个变量对应多个值的情况. 3 d

ASP.NET MVC+Ajax前后端交互

在Web系统中,Ajax技术已经成为提高用户体验的必备技术.开发Ajax程序,涉及两方面的内容:一是客户端技术,二是服务器端技术. (1)客户端技术 核心工作是通过JavaScript向服务器发送数据和接收数据.初次之外还涉及两个工作,一是数据的展示,因此涉及Html DOM.CSS等相关技术:二是数据处理,因此涉及JSON.XML等数据格式处理技术.在实际开发过程中,可以借助一些客户端框架,来提高工作效率. (2)服务器端技术 核心工作是完成在服务器端接收和发送数据. 10.1 使用动作方法处

ajax前后端交互原理(1)

1.Node.js简介 1.1.前后台数据交互流程 在web开发中,我们经常听说前端和后台,他们分别是做什么具体工作的呢?他们怎样交互的呢?我们得把这些基础的问题都搞明白了,才有一个大致的学习方向,首先,我们来看一张生活中几乎每个人都经历过的一个场景,如下图: 当你去餐馆吃饭的时候,坐下后服务员会带着一个菜单过来,问你需要点什么菜,这个时候你浏览了菜单上的菜,把想吃的菜告诉服务员,服务员把你点的菜拿到后台,后台根据你点的菜名,逐一完成,菜做完后叫服务员给你上菜,就这么一个场景其实和我们web开发

ajax前后端交互原理(2)

2.NPM使用 2.1.NPM是什么 NPM的全称是Node Package Manager,是一个NodeJS包管理和分发工具,这里要搞清楚包的概念,通俗的说,包就是具有一定功能的工具(软件),本质上呢这些包就是很多文件的集合,例如下图就是一个包: 这个包的作用就是将ES6的代码转换成ES5的代码,这个包我们在后面的webpack课程中会讲到,总之,你要明白的第一个概念就是包就是一些文件组成的,其实就是我们写的具有一定功能的源码文件 如果你理解了包的概念,那么NPM包管理器就很容易理解了,既然