ext.ajax異步提交html頁面form表單非formPanel(轉錄,謝謝做者)

1. ext的formPanel表單的提交不少人都知道,可是如何用ext提交html頁面普通的表單?javascript

 

2. 在這裏提供小的例子代碼簡單就不提供文件了,現將代碼貼給你們分享。css

 

3. jsp代碼以下只包含一個簡單的formhtml

 

Java代碼 java

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"  數據庫

  2.     pageEncoding="UTF-8"%>  json

  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  bootstrap

  4. <html>  app

  5. <head>  jsp

  6. <script type="text/javascript">  post

  7.     var contextPath="<%=request.getContextPath()%>";  

  8. </script>  

  9. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  

  10. <title>Insert title here</title>  

  11. <link rel="stylesheet" type="text/css" href="ext-4.0.7/resources/css/ext-all.css" />  

  12. <script type="text/javascript" src="ext-4.0.7/bootstrap.js"></script>  

  13. <script type="text/javascript" src="js/extjs3.js"></script>  

  14. </head>  

  15. <body>  

  16.     <form action="" id="userForm" method="post">  

  17.         c_nme:<input type="text" id="c_nme" name="c_nme"/><br/>  

  18.         c_sex:<input type="text" id="c_sex" name="c_sex"/><br/>  

  19.         <input type="button" onclick="saveUser()" value="submit">  

  20.     </form>  

  21. </body>  

  22. </html>  

 

 

4. 提供js代碼以下這裏用struts1(struts2請自行配置url)

 

Java代碼 

  1. function saveUser() {  

  2.  Ext.Ajax.request({    

  3.        url: contextPath+"/secured/cust/custController.do?method=saveUser",    

  4.        method: "POST",  

  5.       <span style="color: #ff0000;"> form : 'userForm',//這裏爲html表單名(必須有)</span>  

  6.        success: function (response, option) {    

  7.            response = Ext.JSON.decode(response.responseText);    

  8.            if (response.success == true) {    

  9.                if (response.flag == true) {    

  10.                    Ext.MessageBox.alert("提示""保存信息成功!");    

  11.                    Ext.getCmp('gridpanel').store.load();  //刷新列表  

  12.                }else {   

  13.                    Ext.MessageBox.alert("錯誤信息""保存信息失敗!");  

  14.                }    

  15.            }else { Ext.MessageBox.alert("錯誤信息", response.msges); }    

  16.        },    

  17.        failure: function () { Ext.Msg.alert("提示""保存失敗<br>沒有捕獲到異常"); }    

  18.          

  19.     });    

  20. }  

 

5. 提供action中方法以下(這裏沒有鏈接數據庫)

 

Java代碼 

  1. public ActionForward saveUser(ActionMapping iMapping, ActionForm form,  

  2.             HttpServletRequest request, HttpServletResponse response) {  

  3.         try {  

  4.             CustForm theForm = (CustForm) form;  

  5.             String name = theForm.getC_nme();  

  6.             String sex = theForm.getC_sex();  

  7.             System.out.println(name+" "+sex);  

  8.             response.setCharacterEncoding("UTF-8");  

  9.             response.setHeader("Cache-Control""no-cache,must-revalidate");  

  10.             response.setHeader("Pragma""no-cache");  

  11.             response.setDateHeader("Expires"0);  

  12.             // json.put("state", 1); // 成功標誌  

  13.             response.getWriter().print("{success :false,flag:true,msges:'測試'}");  

  14.   

  15.         } catch (Exception e) {  

  16.             log.error(e.getMessage() + "刪除table異常", e);  

  17.         }  

  18.         return null;  

  19.     }  

相關文章
相關標籤/搜索