`

EXT的同步请求

    博客分类:
  • EXT
阅读更多

今天做DBlock的时候,用ext向后台发送同步请求。代码如下:

        var conn = Ext.lib.Ajax.getConnectionObject().conn;
        conn.open("POST", '/group/lock/' + record_id , false);
        conn.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
        conn.send('mode=edit');
        var res = Ext.util.JSON.decode(conn.responseText);
        if (res.success == false) {
            Ext.MessageBox.show({
                title : 'エラー',
                msg : res.result,
                minWidth : 260,
                buttons : Ext.MessageBox.OK
            });
        }

 结果IE好用,火狐用get方法提交没事,用post提交总出500错误。郁闷。

 

老田网上找到解决方法,在conn.send之前添加一句:

conn.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");

解释贴在下面:

 

一般参数传递通过url后面跟后台也能取到,不过看到send参数也可以发送参数,试验了一下服务器端接受不到发送的参数,在firebug里看到发送的请求post部分是一个串,不太象正常发送的参数。搜索了很久也没有找到方法,后来搜到一篇文章介绍了xmlHttpRequest对象的send方法解释,才知道需要设置一个header属性Content-Type 告诉服务器是form方式发送数据,然后send方法里的参数串才会被服务器解释到。

 

 

其实我的html页也已经配置了上面的属性,不知道为什么没起作用。

分享到:
评论
1 楼 alymail 2009-08-31  
中文的参数写在send('mode='+edit); 中,就不会有乱码了.

相关推荐

    Ext.Ajax.request2.x实现同步请求

    本文将详细解析如何利用`Ext.Ajax.request`实现同步请求,并探讨其背后的原理和注意事项。 首先,我们需要理解Ajax的本质,它是Asynchronous JavaScript and XML的缩写,虽然现在XML已不再是主要的数据交换格式,但...

    ext-basex.js 进行Ext.Ajax.request 同步请求 FF无法正常

    标题提到的"ext-basex.js进行Ext.Ajax.request同步请求 FF无法正常"问题,涉及到浏览器兼容性和异步/同步请求的理解。 `Ext.Ajax.request`是ExtJS中的一个方法,用于发起Ajax(异步JavaScript和XML)请求。它可以...

    extjs ajax同步请求所需js

    标题中提到的"extjs ajax同步请求所需js"是指ExtJS框架中用于执行同步Ajax请求的相关JavaScript代码。在ExtJS中,Ajax请求通常通过`Ext.Ajax`对象来实现。与传统的异步请求不同,同步请求会阻塞浏览器,直到请求完成...

    Ext AJAx的同步请求方法

    这是一个对Ext中的AJAx进行扩展了的方法,使其可以支持同步访问

    extjs3.0 ajax 同步请求

    ### ExtJS 3.0 AJAX 同步请求详解 #### 一、引言 ExtJS 是一款基于 JavaScript 的开源框架,用于构建现代化的 Web 应用。它提供了丰富的 UI 组件以及强大的数据处理能力,使得开发者能够快速地开发出高质量的企业...

    Ext 操作数据库,对数据的增删改查,包括数据库,Ajax请求和store请求的设置

    这个压缩包文件“ExtProject”显然是一个基于Ext框架的项目,它涵盖了数据库操作、Ajax请求以及Store的使用,是初学者学习Ext的理想资源。 首先,让我们深入了解一下Ext中的"增删改查"(CRUD)操作。CRUD代表创建...

    ext 同步和异步示例代码

    在同步请求中,`conn.send()`之后的代码会等待服务器的响应。当服务器返回结果后,`conn.responseText`会包含服务器返回的文本数据。在示例中,根据`responseText`的值来更新`state`,并最终返回权限状态。 ```...

    Ext3.1 Ajax 精简包以及使用方法

    如果需要同步请求,可以在`request`方法中设置`async: false`。 6. **处理错误:** 除了`failure`回调外,还可以使用`Ext.Ajax.onError`全局监听器来捕获所有Ajax请求的错误。 7. **取消请求:** 如果需要取消正在...

    EXT帮助文档(中文EXT3.0 API,中文EXT2.2 API)

    EXT 3.0是EXT库的一个重要版本,引入了许多新功能和改进,例如改进的数据网格、强大的图表组件、新的布局管理器以及对Ajax请求的增强支持。通过EXT 3.0中文API.CHM文件,开发者可以更方便地理解和使用EXT库的各种...

    ext2.0项目源代码供大家学习ext使用

    5. **Ajax通信**:EXT通过Ext.Ajax类提供了异步请求功能,方便与服务器进行数据交互。 6. **GridPanel**:EXT的表格组件,可展示大量数据并支持排序、过滤、分页等功能。 7. **FormPanel**:用于创建表单,支持...

    Ext框架开发文档及ext-core.js

    7. **Ajax支持**:EXT内置了Ajax通信机制,能够方便地进行异步数据请求,与服务器端进行数据交互。 8. **API文档**:EXT2.0_API.chm是EXT框架的API参考手册,包含了所有类、方法和属性的详细说明,是开发时的重要...

    Ext_2.2_API(chinese).rar_Ext 2.2 API_ext js 2_ext-2.2 api_ext2.2

    Ajax通信组件如`Ext.Ajax`提供了一种方便的方式来发送异步请求,并处理服务器响应。 此外,`Ext.form.FormPanel`和相关组件允许创建复杂的表单,支持验证和数据提交。拖放功能允许用户通过简单的拖动操作来交互,...

    Ext.Ajax.request 小问题收集

    在标题提到的"同步请求包"问题中,EXTJS默认情况下,`Ext.Ajax.request`是异步执行的,但有时我们可能需要同步请求,例如在某些数据初始化场景。要实现同步请求,需要设置配置项`async: false`: ```javascript Ext...

    ext2.02文档下载

    6. **Ajax改进**:改进了Ajax请求处理,添加了更多的请求选项和响应处理机制。 7. **国际化支持**:EXT2.0增强了对多语言的支持,使得应用程序更容易本地化。 8. **插件系统**:EXT2.0的插件系统更加完善,方便...

    ext 3.0中文API

    AJAX请求通过`Ext.Ajax`类进行,支持异步加载数据,可以方便地添加回调函数处理响应。同时,EXT 3.0强化了拖放功能,提供了`Ext.dd.DD`和`Ext.dd.DDProxy`等接口,使得元素拖放操作变得直观易用。 在EXT 3.0中文...

    ext后台经典实例

    7. **数据绑定**:EXT支持双向数据绑定,使得UI组件的状态与数据模型保持同步。当模型数据变化时,相关的UI元素会自动更新;反之,用户对UI的操作也会反映到数据模型。 8. **RESTful API**:EXT后台经典实例往往...

    ext+SSH增删改查

    Struts接收请求,调用Service层的更新方法,Hibernate负责将修改同步到数据库。 4. 查:EXT的表格或树组件通过Ajax请求获取数据,Struts控制器从Service层获取数据,可能需要进行一些业务逻辑处理,然后返回JSON...

Global site tag (gtag.js) - Google Analytics