`

ExtJS中Ext.Ajax.request与form1.getForm().submit的基本区别

阅读更多

 

相同点:都属于Ajax提交方式!

不同点:Ext.Ajax.request是Ext.data.connection的一个实例

              form1.getForm().submit是BasicForm的一个实现方式

使用上的区别:

1.form1.getForm().submit常用在表单提交的时候,就是说要提交页面数据,比如新增和修改数据页面

2.Ext.Ajax.request常用在根据参数提交的时候,比如删除,我们把页面选中的ID进行遍历,封装在一个Array中,作为一个参数做Ajax的提交

例子:

首先是form1.getForm().submit的例子:

function formSubmit(){
   if (form1.getForm().isValid()) {
    form1.getForm().submit({
     waitTitle : '提示',//标题
     waitMsg : '正在提交数据请稍后...',//提示信息
     url : 'eidtBooktype.action',
     method : 'post',
     params : 'booktype',
     success : function(form, action) {
      var flag=action.result.msg;
      window.returnValue='SUCC';
      Ext.Msg.alert('提示',flag,function(){
       window.close();
      });
     },
     failure : function(form,action) {
      var flag=action.result.msg;
      Ext.Msg.alert('操作', flag);
     }
    });
   }
}

其次是一个Ext.Ajax.request的例子:

Ext.Ajax.request({
         url : 'deleteBooktypes.action',
        method : 'post',
        params : {delids:deleteids.toString()},
        success : function(form,action) {
         //alert(response.responseText); //返回的json值的字符串
         var respText = Ext.util.JSON.decode(form.responseText); //把字符串变为json格式
         var msg=respText.msg;
         Ext.MessageBox.alert('提示',msg,function(){
          bookTypeStore.reload();
         });
        },
        failure : function(response,options) {
         var respText = Ext.util.JSON.decode(response.responseText); //把字符串变为json格式
         var msg=respText.msg;
         Ext.MessageBox.alert('提示',msg,function(){
          bookTypeStore.reload();
         });
        }
       });

使用是的区别:

最明显就是success和failure时候function的参数啦!

Ext.Ajax.request的function(response,options),option非常有用,用response.responseText获得返回参数,注意这个地方的response参数可以换成action

form1.getForm().submit的function(form, action),action很有用,用action.result.msg获得返回值

还有个最明显区别是Ext.Ajax.request不可以用waitMsg,真是Ext的一个败笔呀!!

分享到:
评论

相关推荐

    Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别

    总结,`Ext.FormPanel`的`getForm().submit()`更适合处理基于表单的数据提交,它简化了表单数据的处理和验证,而`Ext.Ajax.request`则提供了更高的灵活性,适用于各种HTTP请求,特别是当需要发送非表单数据或处理...

    ext几个实例

    【EXTJS】Ext.AJAX与FormPanel在登录案例中的应用 EXTJS是一个强大的JavaScript库,主要用于构建富客户端Web应用程序。在EXTJS中,Ext.AJAX和Ext.FormPanel是两个核心组件,它们分别用于异步与服务器进行数据交互和...

    extjs文档的详细介绍

    本文将详细介绍EXTJS中两种主要的前后台数据传递方法:`Ext.Ajax.request` 和 `FormPanel` 的 `getForm().submit()`。 首先,`Ext.Ajax.request` 是EXTJS提供的一个全局Ajax对象,用于发送异步HTTP请求。它的基本...

    Extjs upload(ext官网例子)

    可以使用`Ext.Ajax.request`或`Ext.form.action.Submit`,设置`method`为`POST`,并使用`params`或`formParams`指定其他非文件数据。 ```javascript var form = this.getForm(); if (form.isValid()) { form....

    EXT dojochina ExtAjax表单提交 L9.rar

    此外,EXTJS的`Ext.Ajax`对象还提供了其他方法,如`request()`、`load()`等,可以用于更复杂的异步通信需求。在实际开发中,开发者可以根据具体场景灵活运用这些功能,创建出高效、用户体验优秀的Web应用。

    Ext登陆login

    form.getForm().submit({ url: 'login.php', method: 'POST', success: function(form, action) { // 登录成功处理 }, failure: function(form, action) { // 登录失败处理 } }); } } } ] }] }); }...

    ExtJs ajax提交

    - 结合`FormData`对象和`Ext.form.Basic`的`getForm().submit()`方法可以实现文件上传。 9. **异步进度** - 如果服务器端支持,可以通过`progress`回调处理上传或下载的进度。 - 需要设置`enableProgress: true`...

    extJS中常用的4种Ajax异步提交方式

    在ExtJS中,异步数据交互是通过Ajax技术来实现的。Ajax允许应用程序在不刷新整个页面的情况下与服务器进行通信,极大地提升了用户体验。在ExtJS中,有多种方式可以实现Ajax异步提交,这里我们将详细探讨四种常见的...

    ext开发_前后台交互

    #### Ext.Ajax.request与form.submit的区别 尽管这两种方法都能实现前后端的数据交换,但它们之间存在一些关键差异。`form.submit()`根据后端返回的JSON数据的`success`字段自动选择成功或失败的回调,同时能处理...

    EXTjs 文件上传(可用)

    form.getForm().on('submit', function(form, event) { event.preventDefault(); var fileInput = form.findField('uploadFile').getEl().dom; var file = fileInput.files[0]; // 构建POST数据 var formData ...

    ext文件上传下载

    Ext.Ajax.request({ url: 'download.php', // 获取文件URL的服务器端请求 method: 'GET', success: function (response) { var url = response.responseText; // 假设服务器返回文件的URL downloadFile(url); ...

    ext多文件上传

    formPanel.getForm().submit({ url: 'upload.php', // 服务器端处理文件的URL method: 'POST', enctype: 'multipart/form-data', params: {action: 'upload'}, // 添加额外参数 success: function(form, action...

    ExtJs做的用户登陆!ASP后台

    loginForm.getForm().submit({ url: 'login.asp', method: 'POST', params: { username: loginForm.findField('username').getValue(), password: loginForm.findField('password').getValue() }, success: ...

    Extjs多文件上传

    formPanel.getForm().submit({ url: 'upload.php', // 服务器端接收文件的URL method: 'POST', useDefaultXhrHeader: false, success: function(form, action) { // 处理成功响应 }, failure: function(form,...

    Extjs结合Asp.net文件上传

    form.getForm().submit({ url: 'Upload.ashx', // ASP.NET 处理文件的URL method: 'POST', success: function(form, action) { alert('文件上传成功'); }, failure: function(form, action) { alert('文件...

    Ext制作的登陆Demo

    loginForm.getForm().on('submit', function(form, event) { if (!form.isValid()) { event.preventDefault(); // 阻止表单提交,因为有无效字段 } else { // 这里可以添加服务器端验证逻辑,例如使用Ajax发送...

    extjs四种异步提交

    在`saveUser_ajaxSubmit1`函数中,EXT JS提供了`Ext.Ajax.request`方法进行异步提交。你需要手动构建要传递的参数,并设置URL、请求方法(如POST或GET)。在`success`和`failure`回调函数中处理服务器响应。 2. **...

    EXT3.0 JSP上传

    uploadForm.getForm().on('submit', function(form, event) { event.preventDefault(); var fileInput = Ext.getCmp('fileInput'); var formData = form.getFieldValues(); formData.file = fileInput....

    Extjs页面验证(修订版)

    - 同时,示例可能还展示了如何在提交表单后与服务器进行交互,例如使用`Ext.Ajax.request`发送POST或GET请求,以及如何处理服务器返回的数据。 4. **实际应用**: - 页面验证不仅提高了用户体验,还能减少无效的...

Global site tag (gtag.js) - Google Analytics