js ajax通用方法,Ajax常用方式

一、基本用法(发送请求、接收返回值);

1、js代码

$.ajax( {

type :"POST",url :"/text.action?name="+name+"&user.id="+id,//后面name/id为变量

dataType :"json",async :false,

success : function(result) {

alert("result"+result);

}

});

或者将url和参数分开写:

url:"text.action",

type:"post",

data:{"user.id":id,"name":name},

2、action配置

extends="json-default"//pakage的继承属性

result

3、action中代码

private String result;

public String test() {

......

......

this.result="succ"; //可给result赋值json串

return SUCCESS;

}

相关定义:

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

JSON 是存储和交换文本信息的语法。类似 XML。

JSON 比 XML 更小、更快,更易解析。

二、json数据封装

1、action中封装json格式的对象数组(转为字符串传输)

List list=prizeService.ajaxQueryList(prizes);

JSONArray jArray=new JSONArray();

if (list!=null&&list.size()>0) {

for(Prize all:list){

JSONObject object=new JSONObject();

object.put("id", all.getId());

object.put("name", all.getName());

object.put("price", all.getPrice());

jArray.add(object);

}

result=jArray.toString();

}

2、action中封装json格式的对象(含对象数组)

JSONObject prizeJson=new JSONObject();

prizeJson.put("allRow", pageBean.getAllRow());

List list=prizeService.ajaxQueryList(prizes);

JSONArray jArray=new JSONArray();

if (list!=null&&list.size()>0) {

for(Prize all:list){

JSONObject object=new JSONObject();

object.put("id", all.getId());

object.put("name", all.getName());

object.put("price", all.getPrice());

jArray.add(object);

}

prizeJson.put("prizeArray", jArray);

result=prizeJson.toString();

}

三、json数据解析

1、js中解析json格式的对象数组的字符串

success : function(result) {

var jsonArray=eval(result);//随意定义一个变量接收解析后的json数组

for(var i=0;i

alert(jsonArray[i].id);

alert(jsonArray[i].name);

}

}

方法说明:eval() 函数使用的是 JavaScript 编译器,可解析 JSON 字符串,然后生成JavaScript 对象。

2、js中解析json格式的对象(含对象数组)的字符串

//列表最下方默认显示加载中,滑到页面底部就能看到,并自动触发加载下一页。

$("#currentPage").val(parseInt(currentPage)+1);//不要放在success里面,容易加载重复

success : function(result) {

var json=eval(result);//随意定义一个变量接收解析后的json对象

alert(json.totalPage);

var context="";

for(var i=0;i

alert(json.prizeArray[i].id); //prizeArray是在action中封装的对象数组。

alert(json.prizeArray[i].name);

context+='

context+='...';

}

context+='加载中...';//滑到页面底部就能看到,另外加上触发

$("#loading").remove()

$("#container").append(context);

}

注:getJSONArray、getJSONObject 数组和对象之间相互获取。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值