随笔-9  评论-168  文章-266  trackbacks-0
 /**(注:以下只是部分代码,只可理解不要照抄)
  * 以下是表单 __________________________________________________
  * */
var memberAddWindow;

 //文章标题
 var articletitle = new Ext.form.TextField({
  fieldLabel:'文章标题',
  name:'memberName',    //必须指名name属性.用于将参数传出去.参数名:name属性值,如'memberName'.参数值:'memberName'对应的文本框的值.
  allowBlank:false,
        anchor:'90%'
 });

 //表单对象
    var memberForm = new Ext.FormPanel({

        title: '添加新文章信息',

        url:'./member_manage.jsp?command=insert',

        items: [articletitle],
        buttons:[
{
         text:'提交',
         handler : function(){
                          if ( memberForm.getForm().isValid() )           //表单数据进行验证
                          memberForm.getForm().submit({                  //提交表单
                               waitMsg:'保存中,请稍后...',                   //表单提交等待过程中,出现的等待字符
                               success : function(re,v){              //表单提交成功后,调用的函数.参数分为两个,一个是提交的表单对象,另一个是JSP返回的参数值对象
                                   var jsonobject = Ext.util.JSON.decode(v.response.responseText);   //将返回的JSON数据转换成JSON对象,转换失败即报错.
                                   // Ext.Msg.alert("msg,oject",jsonobject.msg);                                    //用JSON对象获取JSON数据的值

                                   memberForm.getForm().reset();           //表单中所有数据置空
                                   memberAddWindow.hide();                 //表单隐藏
                                   bbscenter.getRootNode().reload();       // 重新加载树结点.
                                              }
                                failure : function(){
                                    Ext.Msg.alert("msg,oject",jsonobject.msg);      //返回失败
                           });
                         }
},{
      text:'取消',
      handler : function(){
                       memberForm.getForm().reset();
                       memberAddWindow.hide();
                     }
     }]
    });
   
    //窗体对象
    function addarticle(){
     if(!memberAddWindow){
   memberAddWindow = new Ext.Window({
       el:'window_win',
       layout:'fit',

       closable:true,
       closeAction:'hide',
          plain:true,
       items: [memberForm]
   });
     }
  memberAddWindow.show(Ext.get('newWindowButton'));
    }  


JSP:
out.print("{success:true , msg:'123'}") ;  //只有指定success:true才能返回成功,succes:false或其他字符返回失败.
//form的提交是对ajax请求做了封装,要求必须是那咱格式返回响应,否则无法正确解析 ; Ajax.lib.request 没有这规定.
posted on 2008-08-26 17:17 紫蝶∏飛揚↗ 阅读(31542) 评论(16)  编辑  收藏 所属分类: EXTJS重点

评论:
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-04-13 09:44 | 123
代码不全么,而且有错误  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-04-17 14:49 | 紫蝶∏飛揚↗
首先声明,这里的代码都是手稿,不全,有错,那是可能的,我不保证这里的东东都是正确的.感觉有错的,你可以提出来.讨厌那种自我感觉良好,自大的人.大家都是在学习,所以太自大了,只能说明你装精.  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-04-26 21:59 | 123

总出这个错是为什么?
消息: 语法错误
行: 6321
字符: 28
代码: 0
URI: http://localhost:8080/aaa/extjs/ext-all.js

  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-04-27 13:54 | 紫蝶∏飛揚↗
ms楼上的错误是自已语法错了。。。  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-08-14 10:08 | ruanwxh
我也出现语法错误怎么解决啊!楼主大哥??  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-08-17 09:09 | 紫蝶∏飛揚↗
你把错误要帖出来。我才能帮你看啊。。。  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-08-19 13:40 | 琉璃
受益了,楼主大哥!  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 [未登录] 2009-09-05 16:15 | fireboy
我也是初学者,做了个和你差不多的例子。也遇到了其间的问题。后来问了很多人,最后的答案是jsp在容器内转化为javaservlet时会生成一定的html标签,导致extjs解析json出错。网上推荐用servlet取代jsp相应。我处理了一下。果然对了。看来是extjs的一个小小的bug。。  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-09-06 09:12 | 紫蝶∏飛揚↗
EXTJS接收后台数据,用JSP输出的JSON产生的HTML代码,不是EXTJS的BUG,而是你自已没有定义好JSP.如我写的webapps JSF+Spring+Hibernate项目开发流程
http://www.blogjava.net/algz/articles/190077.html 文章末尾就说了EXTJS接收JSP输出的JSON页面代码怎么写.
EXTJS接收的是纯数据,你用JSP输出它不可能自动辩别,多看看EXTJS的官方例子吧.  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-11-18 17:02 | zhangxw
success : function(re,v){ }
failure : function(){ });
你好,我想知道这里是如何判断是success还是failure的,比如登陆的时候
boolean b=employService.login(employ);这是action的登录方法,他返回的是false,为什么还是执行success对应得方法,我的提交和你的类似……   回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2009-11-20 15:07 | 紫蝶∏飛揚↗
本例中,依据"url:'./member_manage.jsp?command=insert',"的返回值.  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2010-03-24 17:39 | 半支烟
挺好的
自己写了个

var simple = new Ext.FormPanel({
url:'sms.jspx/method=send',
method:'post',
labelWidth: 55,
frame:true,
title:'发送短消息',
defaults: {width: (bodyWidth-85)},
defaultType: 'textfield',
items: [relid,title,
pic,content],
buttons: [{
text: '发送',handler:doSave
},{
text: '返回',handler:goBack
}]


function doSave()
{


simple.form.submit();
alert('点的我');
      
}

没提交上去,那应该怎么写呢  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2010-04-03 19:03 | 紫蝶∏飛揚↗
没提交上去,只能等到超时,在回调函数中处理.
即:
simple.form.submit({
success:function(...){成功},
failure:function(...){失败}});   回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2010-08-03 16:54 | 碎片
服务端怎么接收 EXTJS Form提交过来的数据的??

楼主给我们讲解了怎么提交,我想再了解下,提交给服务端了,怎么接收。是不是像传统的那样接收的?我没接收成功。请楼主指点指点  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2011-11-03 13:29 | dfd
dfdf  回复  更多评论
  
# re: extjs 提交表单(注意Form必须的规定) , 取JSP返回值 , 转换JSON数据为JSON对象使用 2013-05-27 16:29 | dhfhss
太感谢了,解决了困扰我一天的问题啊  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: