加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Ajax常用方式

发布时间:2020-12-16 02:05:31 所属栏目:百科 来源:网络整理
导读:一、基本用法(发送请求、接收返回值); 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和

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

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的继承属性

<action name="test" class="societyPPSAction" method="test">

<result type="json">

<param name="root">result</param>

</result>

</action>

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<Prize> 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<Prize> 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.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<jsonArray.length;i++){

alert(result[i].id);

alert(result[i].name);

}

}

方法说明:eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成JavaScript对象。必须把文本包围在括号中,这样才能避免语法错误。

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

success : function(result) {

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

alert(json.allRow);

for(var i=0;i<json.prizeArray.length;i++){

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

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

}

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读