js异步提交form表单的解决方案
生活随笔
收集整理的這篇文章主要介紹了
js异步提交form表单的解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.定義異步提交表單的方法 (通用方法)
/*** 異步提交form表單* @param options {form:form表單元素,success:執行成功后處理函數}* <span style="color:#ff0000;"><strong>@注意 后臺接收參數要解碼否則中文會導致亂碼 如:URLDecoder.decode(param,"UTF-8")</strong></span>* @應用場景 需要用在form 的 onsubmit事件當中,并且確保方法最后恒久返回false* @return 必須返回false 用于阻止表單刷新提交 * */function ajaxSubmitForm(options){var form1 = options['form'];var ajax_url = $(form1).attr('action'); //表單目標 var ajax_type = $(form1).attr('method'); //提交方法 var ajax_data = $(form1).serialize(); //序列化表單數據 //解碼防止中文亂碼ajax_data = decodeURIComponent(ajax_data,true); ajax_data = encodeURI(encodeURI(ajax_data))$.ajax({ type:ajax_type, //表單提交類型 url:ajax_url, //表單提交目標 data:ajax_data, //表單數據dataType:'json',success:options['success']}); return false; //阻止表單的默認提交事件 };
2.應用場景案例:
<html>
<script type='javaScript'>
//表單驗證并提交-->處理 function exeSubmit(form1){//可以在此添加校驗return ajaxSubmitForm({form:form1,success:function(data){data = eval("("+data+")");if(data&&data.status == 'success'){alert("新增成功!");window.location.href='<%=basePath%>xxx.action';}else{alert("新增失敗!");}} });}
</script><body>
<form action="xx.action" method="post" οnsubmit="return <span style="font-family: Arial, Helvetica, sans-serif;">exeSubmit(this);</span><span style="font-family: Arial, Helvetica, sans-serif;">">
</span>elements <span style="font-family: Arial, Helvetica, sans-serif;">.......</span><input type='submit' value="提交"/>
</form></body>
</html>
總結
以上是生活随笔為你收集整理的js异步提交form表单的解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java调用clang编译的so_写Ja
- 下一篇: 2022-2028年中国物联网金融产业深