Neil的備忘錄

          just do it
          posts - 66, comments - 8, trackbacks - 0, articles - 0
          項目中一次用到EXTJS的FORMPANEL的提交方式,本以為會與普通AJAX提交方式相同,但是,后來發現兩者之間有一些區別,記錄如下:
          前端EXTJS FORMPANEL代碼如下:
          buttons: [{
                          text:'提交',
                          handler: 
          function(){
                              
          if(dyt_editForm.form.isValid()){
                                  dyt_editForm.form.submit({
                                      url: '
          /tams/xxcj/modifySssq', //處理修改后臺地址
                                      method: 'post',
                                      params: {daid: v.get(
          "da_id")},
                                      success: 
          function (f,v){
                                          
          var myResult = Ext.util.JSON.decode(v.response.responseText);    //這句代碼與普通解析返回字符串不一樣
                                          alert(myResult.result);
                                      },
                                      failure: 
          function (f,v){
                                          Ext.MessageBox.show({
                                              title: '失敗',
                                              msg: '修改出現異常,未能完成,請重試!',
                                              buttons: Ext.MessageBox.OK,
                                              icon: Ext.MessageBox.ERROR
                                          });
                                      },
                                      waitMsg: '正在處理數據,請稍后……',
                                      scope: 
          this
                                  });
                              }
                          }
                      },{
                            text: '取消',
                            handler: 
          function(){
                                dyt_editwin.close();
                            }
                        }]
          后臺可以直接按照普通網頁的方式,按照FORM內控件的名稱獲取各自的值,后臺代碼如下:
          /**
               *    修改所屬時期起止時間 
               
          */
              
          public void modifySssq(HttpServletRequest request,
                      HttpServletResponse response) {
                  System.out.println(
          "*************");
                  String daid 
          = request.getParameter("daid");
                  Date date1 
          = Date.valueOf(request.getParameter("sssqq"));
                  Date date2 
          = Date.valueOf(request.getParameter("sssqz"));
                  String results 
          = DAOFactory.getXxcjDAO().modifySssq(Long.parseLong(daid), date1, date2);
                  
                  
          if("success".equals(results)){
                      results 
          = "修改所屬稅務時期操作成功!";
                  }
          else{
                      results 
          = "修改所屬稅務時期操作失敗!";
                  }
                  
          try {
                      //返回值需要封裝一下
                      Map jsonmap 
          = new HashMap();
                      //這里是想要返回前臺的值
                      jsonmap.put(
          "result", results);   
                      //區別就在這里了,必須要傳回去一個“success”,前臺才能判斷請求是否成功                          
                      jsonmap.put(
          "success"new Boolean(true));
                      JSONObject jsonObject 
          = JSONObject.fromObject(jsonmap);
                      response.setContentType(
          "text/json; charset=utf-8");
                      response.getWriter().print(jsonObject);
                  } 
          catch (IOException e) {
                      log.error(
          "輸出返回值失敗:" + e.getMessage());
                  }
              }
          (完)



          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 大邑县| 宁化县| 温宿县| 通江县| 永定县| 西平县| 湾仔区| 庄浪县| 嘉鱼县| 绿春县| 健康| 河曲县| 红原县| 克东县| 梧州市| 惠来县| 台北市| 灵丘县| 罗城| 五大连池市| 芷江| 贞丰县| 重庆市| 信宜市| 萝北县| 车险| 荆门市| 依安县| 云南省| 翼城县| 兰考县| 峨边| 彰武县| 荣昌县| 黎城县| 宁海县| 叙永县| 盐亭县| 临桂县| 碌曲县| 赞皇县|