第一个ajax程序
2016-03-14 16:35
591 查看
公司一个页面上select查询的功能,试着用ajax写
比较蛋疼的事json只能传递字符串类型的参数···不如用pageBean方便···
<script language="javascript">
var couponType = '${couponType}';
//二级联动 查询活动类型
$("#couponType").children("option").on('click',function() {
var couponType = document.getElementById("couponType");
var aindex = couponType.selectedIndex;
var uid = $("#userId").val();
var aurl = '${pageContext.request.contextPath}/back/coupons_select.action';
$.ajax({
async : false,
type : "post",
url : aurl,
data : {index : aindex,userId : uid},
success : function(data) {
$("#coupontabel tbody").html("");
var obj = eval('('+data+')');
var i =0;
var a = 0;//获得二级select选中的那个option的下标
$.each(obj, function(key, val) {
var str = $("<tr><td>"+val['id']+"</td><td>"+val['price']+"</td><td>$300</td><td>"+
val['type']+"</td><td>"+val['need']+"</td><td>"+
val['sdate']+"至"+val['edate']+"</td></tr>"
)
$("#coupontabel").append(str);
});
}
});
});
</script>
后台:
public void select(){
HttpServletResponse res = ServletActionContext.getResponse();
res.reset();
res.setContentType("text/html;charset=utf-8");
int i=Integer.parseInt( httpReq.getParameter("index"));
Long l = Long.parseLong(httpReq.getParameter("userId"));
List<CouponMemberModel> couponList = new ArrayList<CouponMemberModel>();
HqlHelper hql = new HqlHelper(CouponMemberModel.class,"a");
if(i==1||i==2||i==3){
hql.addCondition("a.isUsed=?",IsUsed.valueOf(i-1));
}
if(l!=null){
hql.addCondition("a.member.memberId=?", l);
}
couponList = couponMemberModelServiceImpl.getAll(hql );
List<JsonTest> jsonList = new ArrayList<JsonTest>();
for(CouponMemberModel m:couponList){
JsonTest j = new JsonTest();
j.setId(m.getCoupon().getCouponId().toString());
j.setPrice(m.getCoupon().getCouponMoney().toString());
j.setNeed(m.getCoupon().getCouponDetail());
j.setType(m.getCoupon().getCouponTypeId().getCouponType());
j.setLimit(m.getCoupon().getCouponMoney().toString());
j.setSdate(m.getCoupon().getCouponBeginTime().toString());
j.setEdate(m.getCoupon().getCouponEndTime().toString());
jsonList.add(j);
}
JSONArray jsonArray = JSONArray.fromObject(jsonList);
PrintWriter pw;
try {
pw = res.getWriter();
pw.print(jsonArray);
pw.flush();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
比较蛋疼的事json只能传递字符串类型的参数···不如用pageBean方便···
<script language="javascript">
var couponType = '${couponType}';
//二级联动 查询活动类型
$("#couponType").children("option").on('click',function() {
var couponType = document.getElementById("couponType");
var aindex = couponType.selectedIndex;
var uid = $("#userId").val();
var aurl = '${pageContext.request.contextPath}/back/coupons_select.action';
$.ajax({
async : false,
type : "post",
url : aurl,
data : {index : aindex,userId : uid},
success : function(data) {
$("#coupontabel tbody").html("");
var obj = eval('('+data+')');
var i =0;
var a = 0;//获得二级select选中的那个option的下标
$.each(obj, function(key, val) {
var str = $("<tr><td>"+val['id']+"</td><td>"+val['price']+"</td><td>$300</td><td>"+
val['type']+"</td><td>"+val['need']+"</td><td>"+
val['sdate']+"至"+val['edate']+"</td></tr>"
)
$("#coupontabel").append(str);
});
}
});
});
</script>
后台:
public void select(){
HttpServletResponse res = ServletActionContext.getResponse();
res.reset();
res.setContentType("text/html;charset=utf-8");
int i=Integer.parseInt( httpReq.getParameter("index"));
Long l = Long.parseLong(httpReq.getParameter("userId"));
List<CouponMemberModel> couponList = new ArrayList<CouponMemberModel>();
HqlHelper hql = new HqlHelper(CouponMemberModel.class,"a");
if(i==1||i==2||i==3){
hql.addCondition("a.isUsed=?",IsUsed.valueOf(i-1));
}
if(l!=null){
hql.addCondition("a.member.memberId=?", l);
}
couponList = couponMemberModelServiceImpl.getAll(hql );
List<JsonTest> jsonList = new ArrayList<JsonTest>();
for(CouponMemberModel m:couponList){
JsonTest j = new JsonTest();
j.setId(m.getCoupon().getCouponId().toString());
j.setPrice(m.getCoupon().getCouponMoney().toString());
j.setNeed(m.getCoupon().getCouponDetail());
j.setType(m.getCoupon().getCouponTypeId().getCouponType());
j.setLimit(m.getCoupon().getCouponMoney().toString());
j.setSdate(m.getCoupon().getCouponBeginTime().toString());
j.setEdate(m.getCoupon().getCouponEndTime().toString());
jsonList.add(j);
}
JSONArray jsonArray = JSONArray.fromObject(jsonList);
PrintWriter pw;
try {
pw = res.getWriter();
pw.print(jsonArray);
pw.flush();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android学习笔记(二九):嵌入浏览器
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- JavaScript演示排序算法
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序