struts + ajax不执行action中的所有方法和ajax执行成功函数

时间:2016-03-07 17:19:45

标签: jquery ajax struts2

条件是如此奇怪,我不知道我应该做什么以及我需要调试的地方。也许导致这种情况的原因不在于struts或ajax,但我无法找到我错在哪里。我想知道是否有人遇到同样的事情。任何帮助都会感谢。

我使用jquery + ajax将数据发送到struts中的操作,但它不执行action和ajax execute success函数中的所有步骤。

这是我的.js代码

  var jsonString=JSON.stringify(datas);
    jsonString=encodeURI(jsonString);
    jsonString=encodeURI(jsonString);
    $.ajax({
        type:"post",
        url:"headSalerScheduleSubmit.action? branch="+branch+"&week="+week+"&json="+jsonString,
        contentType: "application/x-www-form-urlencoded; charset=UTF-8",
        success:function(){
            alert("make an plan!");
        }
    });

这是我的struts代码。

public String execute(){        
    String branch=request.getParameter("branch");
    String week=request.getParameter("week");
    String json=request.getParameter("json");
    json = URLDecoder.decode(json, "UTF-8"); 
    System.out.println("json is "+json);
    JSONArray jsonarray=JSONArray.fromObject(json);
    System.out.println("jsonarray size is "+jsonarray.size());
    //save Schedule


int scheduleid=scheduleDao.getNum();
    System.out.println("scheduleid is "+scheduleid);
    int branchid=branchDao.searchBranchByName(branch).get(0).getBranchid();
    Calendar calendar=Calendar.getInstance();
    int weekNum=calendar.get(Calendar.DAY_OF_WEEK);
    calendar.add(Calendar.DAY_OF_MONTH, 1-weekNum);
    int day=calendar.get(Calendar.DAY_OF_MONTH);
    calendar.set(Calendar.DAY_OF_MONTH, day);
    Date date=new Date(calendar.getTimeInMillis());
    Schedule schedule=new Schedule();
    schedule.setScheduleid(scheduleid);
    schedule.setWeek(week);
    schedule.setBranchid(branchid);
    schedule.setDate(date);
    scheduleDao.save(schedule);
    return "success";
}

当ajax发送数据时,函数执行到此步骤只需停止int scheduleid=scheduleDao.getNum();

为什么?

0 个答案:

没有答案