getJSON解决 跨域问题例子

前台:
$.getJSON("http://www.xiangan.gov.cn:8082/xahd/common/jdbcPage.as?jsoncallback=?"
,{"_in":"letter@603","pageSize":"1","deptId":"24","isPub":"0"},function(data){
//alert(data);
//alert(data.result[1].page.pageSize);
var jsonData = data;//eval('('+ data +')');//把json字将符串 转换成json对象,方便js使用
var tpl = document.getElementById('templatelist').innerHTML;
var html='';
var result = jsonData.result[0];
if(jsonData.result[0].data !=''){
html = juicer(tpl, jsonData.result[0]);//用模板引擎得到的数据行,样式可以在模板调试
//alert(html);
}
var page = jsonData.result[1].page;
pg = new showPages((page.totalRecord+'' == "" ? 0 : page.totalRecord+''), page.totalPage+'', page.pageNo+'', '','', page.pageSize);
var pageText = pg.createDivHtml(0);
$("#pageTD").append(pageText);
$("#tabTemp").append(html);//将拼接好的html直接追加在后面



java后台:

@Override
public void searchPageDataForList(Page page) throws Exception{
String pageSize = paraPool.get("pageSize");
String pageNo = paraPool.get("currpage");
String isPub = paraPool.get("isPub");
if(pageSize == null || "".equals(pageSize))//每页多少条
pageSize = "20";
if(pageNo == null || "".equals(pageNo))//当前页数
pageNo = "1";
if(isPub == null || "".equals(isPub))//是否发布,默认需要发布的数据
isPub = "1";
page.setPageNo(Integer.valueOf(pageNo));
page.setPageSize(Integer.valueOf(pageSize));
String deptId = paraPool.get("deptId");
if(deptId == null || "".equals(deptId))
throw new HBusinessException("部门ID不能为空!");

String sql = "select a.* from hdzx_letter a,hdzx_leader b where a.c_leaderId=b.c_id ";
sql +=" and a.c_isPublished="+isPub+" and b.c_lettertypeid="+Leader.LETTERTYPE.BM;
sql +=" and a.c_hasdelete <> 1 and a.c_changeDeptId="+deptId;
List<Map<String,String>> list = jdbc.search(sql,page," c_createtime desc");
for(Map<String,String> map : list){
String createtime = map.get("createtime");
String replytime = map.get("replytime");
String letterstatusid = map.get("letterstatusid");
String changedeptid = map.get("changedeptid");
String requestpurposeid = map.get("requestpurposeid");
String purposename = "";
List<Dictionary> dicList = UCache.getDicPool().get("LETTERAIM");
for(Dictionary dic : dicList){
if(requestpurposeid.equals(dic.getId()+"")){
purposename = dic.getName();
break;
}
}
String deptname = UTagFunction.getDeptName(Long.valueOf(changedeptid));
createtime = UTagFunction.formatStr2DateStr(createtime, "yyyy-MM-dd");
replytime = UTagFunction.formatStr2DateStr(replytime, "yyyy-MM-dd");
String letterstatusname = letterstatusid.equals(Letter.LETTER_STATUS.HAS_REPLY+"")?"已答复":"处理中";
map.put("createtime", createtime);
map.put("replytime", replytime);
map.put("letterstatusname", letterstatusname);
map.put("deptname", deptname);
map.put("purposename", purposename);
}
String json = OrgUtil.buildToJsonData(list);
String pageJson = OrgUtil.buildToJsonData(page);
String jsoncallback = paraPool.get("jsoncallback");
json = "{'result':[{'data':"+json+"},{'page':"+pageJson+"}]}";
json = jsoncallback+"("+json+")"; System.out.println("jsoncallback=="+jsoncallback);
System.out.println(json);
HttpServletResponse res = ServletActionContext.getResponse();
OutputStream os = res.getOutputStream();
os.write(json.getBytes("utf-8"));
os.flush();
os.close();
}



附上一个小项目,把他部署到其他域名下,一个是用来测试调用的的,注意细节


可以参考一下网站:http://hi.baidu.com/html5css3/item/7d25060f6d749decf55ba640
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值