您的位置:首页 > Web前端 > JavaScript

第一个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();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript ajax java