struts2+ajax+jquery的Action提交问题
时间:2011-12-04
来源:互联网
我在Form中定义了一个Action,Form中有一个buttion,点击button后执行一个方法,通过JQuery的Ajax方法提交到另一个Action,然后想根据Action的返回结果,决定是不是执行Form的Action。
但是现在不论Ajax的返回结果是什么Form的Action都被执行。
如果把Form的定义删除之后,Form的Action是可以不执行,但是页面输入的数据又无法提交到表单里,
请问如何解决?
具体的代码如下:
JSP的JS的代码:
function checkSearchAjax()
{
var tmpStr = $("form").serialize();
var urlStr = 'ajaxCustSearchForKenshin.action?' + tmpStr;
$.ajax({
async : false,
cache: false,
type: 'POST',
data: {},
dataType : "json",
url: urlStr,
error: function () {
alert('error');
},
success:callbackFunc
});
}
function callbackFunc(data)
{
alert(data.resultCnt);
if(data.resultCnt == "2") {
return false;
//Form的Action不提交
} else {
//Form的Action提交
}
}
JSP的代码:
<s:form name="searchform" id="searchform" action="custSearchForKenshinSer" method="post" theme="simple">
<s:textfield name="name" maxlength="5" theme="simple" />
<s:submit type="button" onclick="checkSearchAjax();" value="search" theme="simple" />
</s:form>
但是现在不论Ajax的返回结果是什么Form的Action都被执行。
如果把Form的定义删除之后,Form的Action是可以不执行,但是页面输入的数据又无法提交到表单里,
请问如何解决?
具体的代码如下:
JSP的JS的代码:
function checkSearchAjax()
{
var tmpStr = $("form").serialize();
var urlStr = 'ajaxCustSearchForKenshin.action?' + tmpStr;
$.ajax({
async : false,
cache: false,
type: 'POST',
data: {},
dataType : "json",
url: urlStr,
error: function () {
alert('error');
},
success:callbackFunc
});
}
function callbackFunc(data)
{
alert(data.resultCnt);
if(data.resultCnt == "2") {
return false;
//Form的Action不提交
} else {
//Form的Action提交
}
}
JSP的代码:
<s:form name="searchform" id="searchform" action="custSearchForKenshinSer" method="post" theme="simple">
<s:textfield name="name" maxlength="5" theme="simple" />
<s:submit type="button" onclick="checkSearchAjax();" value="search" theme="simple" />
</s:form>
作者: blueskymail 发布时间: 2011-12-04
自己找到了解决方法。
在onclick定义的方法之后,加上return false;就可以了。
<s:submit type="button" onclick="checkSearchAjax();return false;" value="search" theme="simple" />
在onclick定义的方法之后,加上return false;就可以了。
<s:submit type="button" onclick="checkSearchAjax();return false;" value="search" theme="simple" />
作者: blueskymail 发布时间: 2011-12-04
那样子你的表单就一直不能提交的。应该在表单的onsubmit事件的指定函数中返回true或者false
作者: p2227 发布时间: 2011-12-04
结贴放分吧

作者: xiaofanku 发布时间: 2011-12-04
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28