ExtJS & Ajax

 Ext.onReady(function(){
   new Ext.form.FormPanel({
    title: "登陆",
    frame: true,
    renderTo:Ext.getBody(), //加载
    buttonAlign:"right",  //按钮右对齐
    width: 260,
    height: 180,
    plain:true,  //协调颜色
    resizable:false,
    bodyStyle:"padding:7px",
    labelWidth:45,
    defaults:{xtype:"textfield", width:180},//设置默认类型为textfield
//    closable:false, //指定close按钮的显示
//    closeAction:"hide", //指定close按钮触发的事件
    listeners:{ //不同功能的按钮
      "show":function(){
        Ext.Msg.alert("窗体显示");
       },
      "hide":function(){
        alert("窗体隐藏");
       },
      "close":function(){
        alert("窗体关闭");
       }
     },
    items:[{ //标签
      fieldLabel:"账号",
      id:"name"
     },{
      fieldLabel:"密码",
      id:"sex"
     }],
    buttons:[{
      text:"确定",
      handler:function(){ //按钮事件
          alert(1);
          this.ownerCt.ownerCt.getForm().submit();  //调用ajax
          Ext.Ajax.request({

               url:"test.jsp",success: function(response)  //如果为 success, 则执行次函数, 返回xml数据。

                              { alert(response.responseXML.xml);  },

               params:{ //提交的数据, 同时在xml药设置对应的接收类型。

                       name :Ext.getCmp("name").getValue(),

                       sex :Ext.getCmp("sex").getValue()

           }});

         }
      
     },{
      text:"取消",
      handler:function(){//取消所填内容
        Ext.getCmp("name").setValue("");
        Ext.getCmp("sex").setValue("");
       }
     }]
    });
 });

test.jsp //接收jsp代码, 通过对应的提交对象, 并设置编码。同时需要import PrintWriter。

 <%
     String name = request.getParameter("name ");
     String sex = request.getParameter("sex ");
     response.setCharacterEncoding("UTF-8 ");
     response.setContentType("text/xml ");
     PrintWriter pw = response.getWriter();
     String str = "<?xml version=/"1.0/" encoding=/"UTF-8/"?>/n ";
     str +="<msg>/n";
     str += "<name>"+name+"</name>/n";
     str += "<sex>"+sex+"</sex>/n";
     str+="</msg>";
     pw.write(str);
     pw.close();
    %>

你可能感兴趣的:(Ajax,xml,function,String,ExtJs,encoding)