ssh 中 jquery ajax 调用action返回的json数据并传递到页面

15 篇文章 0 订阅
   <package name="json" namespace="/" extends="json-default">
     <action name="testByAction"  class="com.xuefeng.ssh.action.GetJsonAction" method="execute">
                           <param name="includeProperities">
                           dataMap.*
                           </param>
                          <result type="json"></result>
         </action>
   </package>


 

struts.xml里边,我直接加了个包,也不知道对不对,param这个是跟action里边的map想对应的

package com.xuefeng.ssh.action;

import java.util.HashMap;
import java.util.Map;

import com.opensymphony.xwork2.Action;
import com.xuefeng.ssh.model.User;

public class GetJsonAction implements Action{
   @SuppressWarnings("rawtypes")
private Map dataMap;

	@SuppressWarnings("unchecked")
	public String execute() throws Exception {
		User u = new User();
		u.setId(13);
		u.setUsername("huhuliuxia");
		u.setPassword("huhuliuxia");
	   dataMap = new HashMap<String, Object>();
	   dataMap.put("user",u.getUsername());
	   dataMap.put("success", true);
	   
	  return SUCCESS;
	}

	@SuppressWarnings("rawtypes")
	public Map getDataMap() {
		return dataMap;
	}

	public void setDataMap(@SuppressWarnings("rawtypes") Map dataMap) {
		this.dataMap = dataMap;
	}
}


 

action的返回得到json :{"dataMap":{"success":true,"user":"huhuliuxia"}}

 

<script>
 $(document).ready(
     function(){  $("#btnOK").click(function() {
          $.ajax({                
           type: "post",                
           url: "/WebContent/testByAction.action",                
           //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字          
           contentType: "application/json; charset=utf-8",                
           dataType: "json",                
           success: function(json) {                    
           //返回的数据用data.d获取内容 
           var jsonObj = eval(json);
           alert(jsonObj.dataMap.user);
              
           },                
           error: function() {                    
           alert("error");                
           }            
           });                
          //禁用按钮的提交             
          return false;        
          });  }
    );
 </script>

 

一开始url没配对,相对路径要搞清楚。

还有觉得代码没错误,就删除下work里边的类。

 

向ajax中传递请求的参数

 

data: "name=John&location=Boston",

第二种方式:

data: {name:"John",location:"Boston"}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值