JSON传送数据格式

概念

  • JSON是一种轻量级的数据交换格式,采用独立于语言的文本格式,通常用于在客户端和服务器之间传递数据。

作用

  • 通过JSON可以前后端传递数据,每个语言都可以被使用。

优点

  • 轻量级交互语言

  • 结构简单

  • 易于解析

语法

var 变量名={name1:value,name2:value}

JSON的定义及解析

一个对象时

  //定义一个对象时
  var book={"title":"java开发之JavaWeb编程","author":"不知名作者","press":"北大青鸟"};
  //往元素中追加,直接变量名.name
  $("#objbook").append("title:"+book.title+",author"+book.author+",press"+book.press);

存储数组的多个对象时

//定义多个对象时 
var bookArray=[
                 {"title":"java开发之面向对象编程","author":"不知名作者","press":"北大青鸟"},
                 {"title":"java开发之数据库编程","author":"不知名作者","press":"北大青鸟"},
                 {"title":"java开发之JavaWeb编程","author":"不知名作者","press":"北大青鸟"},
             ];
//解析多个对象
$(bookArray).each(function (){
  $("table").append(""+this.title+""+this.author+""+this.press+"")
})

JSON与Ajax的交互

$.ajax()通过属性dataType来定义传递数据的格式。

示例如下:

 $.ajax({
    url:"/Student?op=delete&id="+id,
    type:"get",
    dataType:"json",
    success:function (data){
      if(data.status == 1)
      {
               alert(data.message)
                 //无刷新
               $(obj).parents("tr").remove();
        }else{
                alert(data.message);
               } 
             }
    })

   success回调函数中的参数data可以获取JSON从后台传递过来的数据,直接使用.名的方式可以获取值。

注意

  1. 在后台写JSON响应数据时,要使用\\转译为""

  2. 如果后台没有将数据写成JSON格式,前台的dataType是JSON格式的话,它照样可以获取到值,因为JSON只是一个定义的格式,不一定要根据格式实现,前后台定义的值还是可以比较并拿到的。

你可能感兴趣的:(Ajax,json,servlet,java)