action里打了断点但是根本没有进action
页面里有一个按钮触发changestatus
js:
function ChangeStatus(id,status){
var URL = 'collection/changeStatus!changeStatus.action?id='+id+'&status='+status;
$.ajax({
url:URL, //请求的url地址
type:"post", //请求方式
success:function(data){
},
error:function(){
}
});
}
struts:
<action name="changeStatus" class="OpinionFeedbackAction">
<result name="success" type="json">
<param name="root">result</param>
</result>
</action>
action:
public String changeStatus() throws Exception{
logger.debug("进入changeStatusAction changeStatus方法");
String id = this.getRequest().getParameter("id");
String status = this.getRequest().getParameter("status");
System.out.println(id);
System.out.println(status);
int i = opinionFeedbackService.changeStatus(Integer.parseInt(id),Integer.parseInt(status));
if(i==1){
ResultJSON resultJSON = new ResultJSON();
resultJSON.setSuccess("true");
resultJSON.setMsg("成功");
result = JSONObject.fromObject(resultJSON);
}
return SUCCESS;
}
var URL = 'collection/changeStatus!changeStatus.action?id='+id+'&status='+status;
怎么感觉多了一个!号?
感叹号是传参用的啊。。。
是不是没有view,造成页面无法加载这个请求
先在函数里,alert(URL),看有没有执行,在浏览器里输入带域名的url,看看有没有反映,ajax也是http之类的,有firefox的firebug可以看看具体数据,感叹号是符合url规则的。一般在Struts2里面,一个Action里面有多个方法的时候,用!来指定方法的~
'collection/changeStatus!changeStatus.action?id='+id+'&status='+status;
看着有点怪呢
collection/changeStatus!changeStatus.action
collection是什么啊,把collection去掉试试