jQuery学习笔记之 Ajax操作篇(二) - 数据传递


Posted in Javascript onJune 23, 2014

请求数据

我们可以使用 GET、POST 两种方式向后端请求数据,这里以 PHP 为例,假设有测试页面 age.php,用于返回年龄信息,内容为:

if(isset($_REQUEST['name']) && $_REQUEST['name'] == 'stephen') {
  echo '23';
}

当前页面内容为:

<div>
 <a href="age.php">stephen</a>
 <span>age : </span>
 <span id="sex"></span>
</div>

jQuery学习笔记之 Ajax操作篇(二) - 数据传递

我们希望点击 a 标签后,在不刷新页面的前提下获取年龄信息。首先用 GET 方式请求数据:

GET 方式

$('a').click(function(e) {
  e.preventDefault();//
  var url = $(this).attr('href'),
   name = $(this).text(),
   requestData = {'name': name};

  $.get(url, requestData, function(data) {
   $('#sex').html(data);
  });
 });

点击 a 标签后,当前页面为:

jQuery学习笔记之 Ajax操作篇(二) - 数据传递

数据请求成功。我们再用 POST 方式测试下:

POST 方式

$('a').click(function(e) {
  e.preventDefault();//
  var url = $(this).attr('href'),
   name = $(this).text(),
   requestData = {'name': name};

  $.post(url, requestData, function(data) {
   $('#sex').html(data);
  });
 });

代码几乎一样,只是由 get 方法变为了 post 方法。
这里我们其实还可以用 load 方法简化代码:

$('a').click(function(e) {
  e.preventDefault();
  var url = $(this).attr('href'),
   name = $(this).text(),
   requestData = {'name': name};

  $('#sex').load(url, requestData);
 });

发送数据

除了可以使用 Ajax 技术从后端获取数据,还可以向后端发送数据,常见的就是异步提交表单的情景,这里以用户验证为例:

<form action="validate.php">
 username:<input id="username" name="username" type="text" />
 password:<input id="password" name="password" type="text" />
 <input value="submit" type="submit" />
</form>

jQuery学习笔记之 Ajax操作篇(二) - 数据传递

假设当用户名为 stephenlee,密码为 123456 时验证通过,否则失败,测试页面 validate.php 为:

if($_REQUEST['username'] == 'stephenlee' && $_REQUEST['password'] == '123456') {
  echo 'pass';
} else {
  echo 'fail';
}

使用 get 方式发送数据到后端验证:

$('form').submit(function(e) {
  e.preventDefault();//
  var url = $(this).attr('action'), 
   username = $('input[name="username"]').val(),
   password = $('input[name="password"]').val(),
   requestData = {'username': username, 'password': password};

  $.get(url, requestData, function(result) {
   alert(result);
  });
 });

输入错误用户名 lucas 后,结果为:

jQuery学习笔记之 Ajax操作篇(二) - 数据传递

输入正确用户名 stephenlee 后,结果为:

 jQuery学习笔记之 Ajax操作篇(二) - 数据传递

使用 post 方式发送数据思路相同,就不再赘述了。

Javascript 相关文章推荐
jQuery制作仿腾讯web qq用户体验桌面
Aug 20 Javascript
js实现有时间限制消失的图片方法
Feb 27 Javascript
跟我学习javascript的Date对象
Nov 19 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
Jun 06 Javascript
简单谈谈gulp-changed插件
Feb 21 Javascript
JS排序之冒泡排序详解
Apr 08 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
Oct 15 Javascript
使用Vuex解决Vue中的身份验证问题
Sep 28 Javascript
vue踩坑记录之数组定义和赋值问题
Mar 20 Javascript
浅谈vuex中store的命名空间
Nov 08 Javascript
Nest.js环境变量配置与序列化详解
Feb 21 Javascript
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
Apr 13 Javascript
jQuery学习笔记之 Ajax操作篇(一) - 数据加载
Jun 23 #Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
Jun 23 #Javascript
yepnope.js使用详解及示例分享
Jun 23 #Javascript
js的延迟执行问题分析
Jun 23 #Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
Jun 23 #Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
Jun 23 #Javascript
js自定义鼠标右键的实现原理及源码
Jun 23 #Javascript
You might like
PHP 万年历实现代码
2012/10/18 PHP
探讨php中header的用法详解
2013/06/07 PHP
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
AJAX使用了UpdatePanel后无法使用alert弹出脚本
2010/04/02 Javascript
9行javascript代码获取QQ群成员具体实现
2013/10/16 Javascript
实现placeholder效果的方案汇总
2015/06/11 Javascript
JavaScript数组合并的多种方法
2016/05/22 Javascript
String字符串截取的四种方式总结
2016/11/28 Javascript
JS实现深度优先搜索求解两点间最短路径
2019/01/17 Javascript
关于vue项目中搜索节流的实现代码
2019/09/17 Javascript
Python可跨平台实现获取按键的方法
2015/03/05 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python无损音乐搜索引擎实现代码
2018/02/02 Python
对python 矩阵转置transpose的实例讲解
2018/04/17 Python
Python变量访问权限控制详解
2019/06/29 Python
Python运行异常管理解决方案
2020/03/09 Python
纯CSS实现右侧底部悬浮效果(悬浮QQ、微信、微博、邮箱等联系方式)
2015/04/24 HTML / CSS
HTML5之SVG 2D入门5—颜色的表示及定义方式
2013/01/30 HTML / CSS
美国汽车轮胎和轮毂销售网站:Tire Rack
2018/01/11 全球购物
英国50岁以上人群的交友网站:Ourtime
2018/03/28 全球购物
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
捷克购买家具网站:JENA nábytek
2020/03/19 全球购物
Eclipse面试题
2014/03/22 面试题
历史教育专业个人求职信
2013/12/13 职场文书
粗加工管理制度
2014/02/04 职场文书
社区关爱留守儿童活动方案
2014/08/22 职场文书
祖国在我心中演讲稿450字
2014/09/05 职场文书
开展批评与自我批评发言稿
2014/10/16 职场文书
2014年度安全工作总结
2014/12/04 职场文书
诚信高考倡议书
2019/06/24 职场文书
致毕业季:你如何做好自己的职业生涯规划书?
2019/07/01 职场文书
Python实现灰色关联分析与结果可视化的详细代码
2022/03/25 Python
MyBatis核心源码深度剖析SQL语句执行过程
2022/05/20 Java/Android