ajax的常见几种写法以及用法

一、服务端数据格式

1.自定义po类

  1. package com.hbut.ssm.po;
  2. /**
  3. * pojo类
  4. *
  5. */
  6. public class Children {
  7. private String name;
  8. private Integer age;
  9. private String gender;
  10. public Children(String name, Integer age, String gender) {
  11. super();
  12. this.name = name;
  13. this.age = age;
  14. this.gender = gender;
  15. }
  16. public String getName() {
  17. return name;
  18. }
  19. public void setName(String name) {
  20. this.name = name;
  21. }
  22. public Integer getAge() {
  23. return age;
  24. }
  25. public void setAge(Integer age) {
  26. this.age = age;
  27. }
  28. public String getGender() {
  29. return gender;
  30. }
  31. public void setGender(String gender) {
  32. this.gender = gender;
  33. }
  34. }

2.controller准备需要返回的数据

  1. //测试json的输出
  2. @RequestMapping(value="/getChildrenList")
  3. public @ResponseBody List<Children> getChildrenList(HttpServletRequest request){
  4. System.out.println("获取前端的参数:"+request.getParameter("name"));
  5. List<Children> childrenList= new ArrayList<Children>();
  6. childrenList.add(new Children("张三", 25, "男"));
  7. childrenList.add(new Children("李四", 28, "男"));
  8. childrenList.add(new Children("小红", 22, "女"));
  9. return childrenList;
  10. }

二、ajax请求并解析数据

方式1:不带参数  $ajax(url,callback),即第一个参数是请求的url,第二个参数是回调用函数,json数据封装在result,需要对result的json数据进行解析

  1. $(document).ready(function(){
  2. $("button").click(function(){
  3. $.ajax({url:"http://localhost:8080/ssm01/getChildrenList.action",
  4. success:function(result){
  5. //eval函数解析json数据
  6. var array=eval(result);
  7. var texts="解析json数据如下:<br>";
  8. for(var i=0;i<array.length;i++){
  9. texts+=array[i].name+"--"+array[i].age+"---"+array[i].gender+";<br>";
  10. }
  11. $("#div1").html(texts);
  12. }});
  13. });
  14. });

方式2:带参数  $.post(url,data,callback),即第一个参数是请求的url,第二个参数是请求参数,第三个参数是回调用函数,json数据封装在result,需要对result的json数据进行解析

  1. $(document).ready(function(){
  2. $("button").click(function(){
  3. $.post("http://localhost:8080/ssm01/getChildrenList.action",{
  4. name:"菜鸟教程",
  5. url:"http://www.runoob.com"
  6. },
  7. function(data,status){
  8. //eval函数解析json数据
  9. var array=eval(data);
  10. var texts="解析json数据如下:<br>";
  11. for(var i=0;i<array.length;i++){
  12. texts+=array[i].name+"--"+array[i].age+"---"+array[i].gender+";<br>";
  13. }
  14. $("#div1").html(texts);
  15. });
  16. });
  17. });

测试结果如下:


方式三:请求为json方式,请求的参数格式json,返回的是json(与上面请求url不一样,原理类似)

  1. //请求json,输出是json
  2. function requestJson(){
  3. $.ajax({
  4. type:‘post‘,
  5. url:‘${pageContext.request.contextPath }/requestJson.action‘,
  6. contentType:‘application/json;charset=utf-8‘,
  7. //数据格式是json串,商品信息
  8. data:‘{"name":"手机","price":999}‘,
  9. success:function(data){//返回json结果
  10. alert(data);
  11. }
  12. });
  13. }

方式四:请求为key、value方式,返回的是json,(与上面请求url不一样,原理类似)

    1. //请求key/value,输出是json
    2. function responseJson(){
    3. $.ajax({
    4. type:‘post‘,
    5. url:‘${pageContext.request.contextPath }/responseJson.action‘,
    6. //请求是key/value这里不需要指定contentType,因为默认就 是key/value类型
    7. //contentType:‘application/json;charset=utf-8‘,
    8. //数据格式是json串,商品信息
    9. data:‘name=手机&price=999‘,
    10. success:function(data){//返回json结果
    11. alert(data.name);
    12. }
    13. });
    14. }

原文地址:https://www.cnblogs.com/guokezhiren/p/9176858.html

时间: 2024-10-13 09:25:41

ajax的常见几种写法以及用法的相关文章

全面理解Javascript闭包和闭包的几种写法及用途

一.什么是闭包和闭包的几种写法和用法                                                       1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.闭包的特点: 1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态. 2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区. 简单的说,Javascript允许使用内部函数---即函数定义和函数表

转 全面理解Javascript闭包和闭包的几种写法及用途

转自:http://www.cnblogs.com/yunfeifei/p/4019504.html 好久没有写博客了,过了一个十一长假都变懒了,今天总算是恢复状态了.好了,进入正题,今天来说一说javascript里面的闭包吧!本篇博客主要讲一些实用的东西,主要将闭包的写法.用法和用途. 一.什么是闭包和闭包的几种写法和用法                                                       1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑

Javascript闭包和闭包的几种写法及用途

好久没有写博客了,过了一个十一长假都变懒了,今天总算是恢复状态了.好了,进入正题,今天来说一说javascript里面的闭包吧!本篇博客主要讲一些实用的东西,主要将闭包的写法.用法和用途.  一.什么是闭包和闭包的几种写法和用法 1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.闭包的特点: 1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态. 2. 一个闭包就是当一个函数返回时,一个没有释放

全面理解Javascript闭包和闭包的几种写法及用途【转】

一.什么是闭包和闭包的几种写法和用法 1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.闭包的特点: 1. 作为一个函数变量的一个引用,当函数返回时,其处于激活状态. 2. 一个闭包就是当一个函数返回时,一个没有释放资源的栈区. 简单的说,Javascript允许使用内部函数---即函数定义和函数表达式位于另一个函数的函数体内.而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量.参数和声明的

无废话Android之常见adb指令、电话拨号器、点击事件的4种写法、短信发送器、Android 中各种布局(1)

1.Android是什么 手机设备的软件栈,包括一个完整的操作系统.中间件.关键的应用程序,底层是linux内核,安全管理.内存管理.进程管理.电源管理.硬件驱动 2.Dalvik VM 和 JVM 的比较 3.常见adb指令 platform-tools/adb.exe adb.exe : android debug bridge android调试桥 adb devices:列出所以连接的设备 adb kill-server :杀死adb调试桥 adb start-server :启动adb

display的32种写法--摘抄

你知道『回』字有四种写法,但你知道display有32种写法吗?今天我们一一道来,让你一次性完全掌握display,从此再也不用对它发愁. 从大的分类来讲,display的32种写法可以分为6个大类,再加上1个全局类,一共是七大类: ?外部值 ?内部值 ?列表值 ?属性值 ?显示值 ?混合值 ?全局值 外部值 所谓外部值,就是说这些值只会直接影响一个元素的外部表现,而不影响元素里面的儿子级孙子级元素的表现. display: block; 这个值大家不陌生,我们最熟悉的<div>缺省就是这个值

display的32种写法

你知道『回』字有四种写法,但你知道display有32种写法吗?今天我们一一道来,让你一次性完全掌握display,从此再也不用对它发愁. 从大的分类来讲,display的32种写法可以分为6个大类,再加上1个全局类,一共是七大类: ?外部值 ?内部值 ?列表值 ?属性值 ?显示值 ?混合值 ?全局值 外部值 所谓外部值,就是说这些值只会直接影响一个元素的外部表现,而不影响元素里面的儿子级孙子级元素的表现. display: block; 这个值大家不陌生,我们最熟悉的<div>缺省就是这个值

STM32 一种参数检查用法介绍

STM32 一种参数检查用法介绍 assert_param()是一个在代码中很常见的写法,这个函数的功能一般是对函数参数的合法性进行检查,这里以一个例子进行分析: assert_param(IS_GPIO_ALL_PERIPH(GPIOx)) 函数的参数是IS_GPIO_ALL_PERIPH(GPIOx),原型为: #define IS_GPIO_ALL_PERIPH(PERIPH) (((PERIPH) == GPIOA) || ((PERIPH) == GPIOB) || ((PERIPH)

Eclipse中SVN的安装步骤(两种)和用法

一.给安装EclipseSVN,最常见的有两种方式:手动方式和使用安装向导方式.详细过程例如以下: 方式一:手动安装 1.从官网下载site-1.6.9.zip文件,网址是:subclipse.tigris.org2.从中解压出features与plugins目录,拷贝到E:/MyEclipse/myPlugin/svn里面,其他的*.xml文件不要.3.在E:/MyEclipse/MyEclipse X.X/dropins下新建文件svn.link,内容是:path=E://MyEclipse