我用的是jquery和struts2的整合:
jsp代码是:<body>
<input type="text" name="sign" />
<button id="btn">提交</button>
<div id="result"></div>
</body>
<script type="text/javascript" src="js/jquery.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$("#btn").click(function() {
var params = $("input").serialize();// 序列化表单的值
$.ajax({
url : "querysign.action",// 请求的url
type : "post",// 发送方式
dataType : "json",// 接受数据格式
data : params,// 要传递的数据
error:function(json) { // 回传函数
alert("error");
},
success : function(json) { // 回传函数
alert("success");
}
});
});
});
</script>
LoginAction.java
public class LoginAction implements Action{
private String result;
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
public String querysign(){
this.setResult("xixi");
return SUCCESS;
}
public String execute(){
return SUCCESS;
}
}strust部分的写法:
<struts>
<package name="queryuser" extends="json-default">
<action name="querysign" class="com.coco.sns.login.action.LoginAction" method="querysign">
<result type="json"></result>
</action>
</package>
</struts>现在问题是:提交之后可以进入action部分,最后也return SUCCESS,但回到页面之后一直触发的是error部分内容,究竟是为什么呢?
jsp代码是:<body>
<input type="text" name="sign" />
<button id="btn">提交</button>
<div id="result"></div>
</body>
<script type="text/javascript" src="js/jquery.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$("#btn").click(function() {
var params = $("input").serialize();// 序列化表单的值
$.ajax({
url : "querysign.action",// 请求的url
type : "post",// 发送方式
dataType : "json",// 接受数据格式
data : params,// 要传递的数据
error:function(json) { // 回传函数
alert("error");
},
success : function(json) { // 回传函数
alert("success");
}
});
});
});
</script>
LoginAction.java
public class LoginAction implements Action{
private String result;
public String getResult() {
return result;
}
public void setResult(String result) {
this.result = result;
}
public String querysign(){
this.setResult("xixi");
return SUCCESS;
}
public String execute(){
return SUCCESS;
}
}strust部分的写法:
<struts>
<package name="queryuser" extends="json-default">
<action name="querysign" class="com.coco.sns.login.action.LoginAction" method="querysign">
<result type="json"></result>
</action>
</package>
</struts>现在问题是:提交之后可以进入action部分,最后也return SUCCESS,但回到页面之后一直触发的是error部分内容,究竟是为什么呢?
解决方案 »
- 怎样确定用户已选该框<input type="checkbox" name="agreement">我同意论坛注册协议</input>
- jquery中$是指什么意思?
- 请教高手简化这两行程序
- XMLHTTP JS错误 类型不匹配
- 一段动态添加表单程序的Javascript代码
- flippingBook设置pages无法显示本地的图片文件
- IE8浏览器,无法设置dynsrc属性.拒绝访问如何解决
- excel的问题,如何设置excel的数字格式,如何控制excels的单元格宽度等
- 如何将IE窗口控制到能缩到屏幕右下角,最近好象有这样的技术出现
- eval(function(p,a,c,k,e,d)解码
- 有没有firebug dom表的使用资料?
- JqueryIE6的问题
单独返回 action,查一下返回的是不是json格式的数据,不能包含其他html代码之类的.
可是我在其他地方也差不多这样写却可以实现,还有就是,当触发此动作之后,控制台里面报的是这个错误:
Could not find action or result
No result defined for action com.coco.sns.login.action.LoginAction and result error
at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:364)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:266)
at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
at java.lang.Thread.run(Thread.java:619)