解决ajax提交form,点击保存按钮和点击回车效果不同的问题
来源:互联网 发布:手机cad画图软件 编辑:程序博客网 时间:2024/04/30 05:45
$("#submitbt").click(function(){ htmlobj=$.ajax({ type: "POST", url: '${cxt}/smstype/save', data:$("form").serialize(), async:false, dataType: "text", success: function (data) { if('success'==data){ alert("保存成功"); window.location.href='${cxt}/smstype/getSMSAllType? company_id='+'${param.companyId}'; }else{ alert(data); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); } })});
上面是ajax提交form的典型例子:
data:$(“form”).serialize()是提交的参数,如果参数只是一个字段而不是整个form,可以这样写:
data:’id=’+mtId+’&’+’mtUserPhone=’+mtUserPhone,
后台依旧可以用getPara(id)或者getPara(mtUserPhone)来取值。
<form action="#" method="post"> <div class="dep_padleft duanxin_padding"> <input type="text" class="text_style" name="sMSType.type_name"/> <input type="hidden" name="sMSType.company_id" value="${param.companyId }" id="companyId"/> </div> <div class="submit_btn"> <input value="保存" class="sub_btn1" type="button" id="submitbt" /> <input value="取消" class="sub_btn2" type="button" id="cancelbt" /> </div></form>
上面是form表单,当点击保存按钮后,form表单会被提交到后台。
后台通过renderText(“success”);或者renderText(“error”);(这里的后台框架是jFinal)可以返回处理结果。
前台又通过如下代码
if('success'==data){ alert("保存成功"); window.location.href='${cxt}/smstype/getSMSAllType? company_id='+'${param.companyId}'; }else{ alert(data);}
可以弹出相应的提示框。
但问题是:
当在画面上不点击保存按钮,而是敲击键盘的回车,程序会弹出提示框,但之后的跳转就不对了,直接跳转到了空白页面,页面上显示success?
经调查,js需要添加如下代码:
$(document).keypress(function(event){ //回车码是13 if(event.keyCode ==13){ $("#submitbt").trigger("click"); }});
让点击回车去触发按钮的click事件,这样两个操作便一致了。
补充:
如果后台返回的是json数据,如:
setAttr("result","success");setAttr("companyId",companyId.toString());renderJson(new String[]{"result","companyId"});
前台的解析办法是:
success: function (data) { // 解析json数据 var json = eval("("+data+")"); if('success'==json.result){ alert("保存成功"); window.location.href='${cxt}/ab/getAddressBookAll?companyId='+json.companyId; }else if('failbyphone'==json.result){ alert("手机号已存在,请重新填写手机号!"); return false; }else{ alert(data); return false; }}
0 0
- 解决ajax提交form,点击保存按钮和点击回车效果不同的问题
- 解决点击回车触发按钮的问题
- form表单底下的button按钮点击自动提交恶心问题的解决
- 点击回车键自动提交form的问题
- jquery点击按钮或者回车执行提交
- 按回车实现点击某按钮的效果
- 回车直接实现点击某按钮的效果
- 回车直接实现点击某按钮的效果
- button放在form表单导致点击按钮触发的ajax报错问题
- form表单提交点击按钮提交form表单
- 键盘上的回车按钮点击事件的个数问题
- 【HTML】表单form中一单回车就提交的text、一点击就提交的button
- 关于PopupWindow点击不同按钮显示不同pop的解决
- winform中有一个确定按钮,怎么样可以按回车起到和点击按钮一样的效果?
- 点击cell具备和按钮一样的点击效果
- 按钮的ajax请求时,一次点击两次提交的问题
- 点击按钮,ajax提交报错
- 解决:防止页面按钮被重复点击,导致页面重复提交的问题
- Android面试准备复习之Android知识点大扫描 .
- Objective-C----初识Objective-C
- PostgreSql初探(1)-源码安装
- 折弯机——C#读写ini文件
- Linux中 too many open files 的问题解决
- 解决ajax提交form,点击保存按钮和点击回车效果不同的问题
- 利用mybatis-generator自动生成代码
- Mysql 多表联合查询效率分析及优化
- iOS 检测内存泄露
- 国家超级计算天津中心免费测试活动(长期有效)
- Go语言学习示例
- codeforces #308 D.Vanya and Triangles(枚举+斜率分块)
- 获取本地照片和拍照上传并裁剪的实现
- 变量