【问题标题】:passing parameter to server in ExtJs在 ExtJs 中将参数传递给服务器
【发布时间】:2011-06-09 12:29:45
【问题描述】:

我是 ExtJs 的新手。

单击按钮时,我想将文本框中的值传递给服务器(Servlet)。但由于我是新手,所以我不知道该怎么做。

请有人帮我解决这个问题或建议我一些教程或示例

【问题讨论】:

    标签: servlets extjs


    【解决方案1】:

    Ext.Ajax.request可以帮到你。

    代码将如下所示:

    new Ext.Button({
        text: "Send to server",
        handler: function () {
            Ext.Ajax.request({
                url: 'myPage.php',
                success: function (){alert('Value has been sent!');},
                failure: function (){alert('Failure of sending...');},
                headers: {
                    'my-header': 'foo'
                },
                params: { foo: myTextField.getValue() }
            });
        }
    })
    

    【讨论】:

      【解决方案2】:

      在 url 中输入你的 Servlet 类名。 如果您有一个包含多个按钮的表单,例如保存、更新、删除,您可以这样做:

      // Your form fields ...
      var buttonAdd = new Ext.Button({text:'Add', handler:addFunction});
      var deleteAdd = new Ext.Button({text:'Delete', handler:deleteFunction});
      function addFunction(){
          Ext.Ajax.Request({
              url: 'MyServlet', // you can fix a parameter like this : MyServlet?action=add
              method: 'POST',
              params: {
                  myField1: myField1.getValue()
                  // all your params.... 
              }
              success: function (result, request){
                  alert('Succesfully added ' + result.responseText);
              },
              failure: function (result, request){
                  alert('Error in server' + result.responseText);
              }
      });
      
      function deleteFunction(){
          Ext.Ajax.Request({
              url: 'MyServlet', // you can fix a parameter like this : MyServlet?action=delete
              method: 'POST',
              params: {
                  myField1: myField1.getValue()
                  // all your params.... 
              }
              success: function (result, request){
                  alert('Succesfully added ' + result.responseText);
              },
              failure: function (result, request){
                  alert('Error in server' + result.responseText);
              }
      });
      }
      

      在你的 Servlet 中,你可以这样做:

      public void doPost(HttpServletRequest request, HttpServletResponse response){
          String action = request.getParameter("action");
          if(action.equals("add")){
              // Your code for add method goes here
          } else if(action.equals("delete")){
              // Your code for delete method goes here
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-04
        • 2019-05-19
        • 1970-01-01
        • 1970-01-01
        • 2018-12-06
        相关资源
        最近更新 更多