Java代码Struts2Action
this.jsonData = "{success:true}";
String jsonStr = jsonData.toString();
ServletActionContext.getResponse().setCharacterEncoding("utf-8");
ServletActionContext.getResponse().setContentType("text/html;charset=utf-8");
ServletActionContext.getResponse().getOutputStream().print(jsonStr);
System.out.println(jsonStr);
return null;
Struts2.xml
<package name="test" namespace="/test" extends="json-default">
<action name="test" class="test" method="test">
<result type="json">jsonData</result>
</action>
Ext代码:
var form = brandForm.getForm();
form.submit({
waitTitle : '请等待' ,
//waitMsg: '正在提交中',
success:function(form, action){
alert("dddd");
//Ext.Msg.alert('信息', '保存成功!');
},
failure:function(form, action){
alert("22222");
//Ext.Msg.alert('错误', '保存失败');
}
});
请问为什么在Ext中没有返回任何数据?
success: 与 failure都不会触发,直接跳过,浏览器输入Action地址后返回的数据为{success:true}
Struts2
Ext
Ajax
------解决方案--------------------
ServletActionContext.getResponse().getWriter().write("{success:true}");
用这个看看行不行
------解决方案--------------------
试试
var form = brandForm.getForm();
form.submit({
url:'test',
method:"POST",
waitTitle : '请等待' ,
//waitMsg: '正在提交中',
success:function(form, action){
alert("dddd");
//Ext.Msg.alert('信息', '保存成功!');
},
failure:function(form, action){
alert("22222");
//Ext.Msg.alert('错误', '保存失败');
}
});
------解决方案--------------------
执行到了你的action中去了吗?