Ecstore的JS框架使用了mootools,所以ajax调用也使用mootools中的Request组件。

语法:

var myRequest = new Request([options]);

参数:

  1. options - (object, 可选) 参见下列可选项

可选项:

  • url - (string: 默认为 null) 请求的目标URL
  • method - (string: 默认为 'post') HTTP请求方法, 可以是: 'post' 或 'get'
  • data - (string: 默认为 '') 为Request:send方法提供的默认请求参数
  • async - (boolean: 默认为 true) 如果为false, 则请求将以同步方式进行
  • encoding - (string: 默认为 "utf-8") 请求的编码方式
  • link - (string: 默认为 ignore) 可以为'ignore', 'cancel' 或 'chain'
    • 'ignore' - 当请求正在执行之中时,新的请求将被忽略
    • 'cancel' - 当请求正在执行之中时,将立即取消当前执行中的请求,开始执行新的请求
    • 'chain' - 当请求正在执行之中时,将会把新的请求链接在当前请求之后,依次执行所有请求
  • headers - (object) 请求头数据
  • isSuccess - (function) 可覆盖内置的isSuccess函数,可自定义请求成功的规则

看ecstore中的一个例子:

new Request({url:'index.php?app=b2c&ctl=admin_specification&act=check_spec_value_id',
onSuccess:function(re){
if(re=='can'){
row.remove();
}else{
MessageBox.error(re);
}
}
}).post('spec_value_id='+encodeURIComponent(specvid));

onSuccess是在ajax调用成功后返回,参数是响应内容ResponseText

Request还有两个扩展类:
Request.HTML 专门用于响应内容为HTML的请求,重要的参数有:
update - (element: 默认为 null) 请求响应的responseText要插入的目标元素
evalScripts - (boolean: 默认为 true) 如果为true, 则响应内容中script标签中的脚本内容将被执行
evalResponse - (boolean: 默认为 false) 如果为true, 则整个响应内容将被作为脚本来执行

Request.JSON 专门用于发送和接收JSON格式数据的请求,这里ajax调用后将返回一个json对像
示例:

var jsonRequest = new Request.JSON({
url: "http://site.com/tellMeAge.php",
onComplete: function(person, text){
alert(person.age); //显示 "25 years".
alert(person.height); //显示 "170 cm".
alert(person.weight); //显示 "120 kg".
}
}).get({
'firstName': 'John',
'lastName': 'Doe'
});

更多ecstore 问题可联系站长QQ 1611235299

Ecstore中如何调用发起Ajax请求的更多相关文章

  1. 2.jquery在js中写标准的ajax请求

    $(function(){ $.ajax({ url:"http://www.microsoft.com", //请求的url地址 dataType:"json" ...

  2. C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序

    C#中缓存的使用   缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可:  <%@ Outp ...

  3. js中使用队列发送ajax请求

    最近,项目中需要按照先后顺序发送ajax请求,并且在一次请求结束后才能发起下一次,不然就会导致逻辑错误. 解决办法是定义一个数组,保存ajax请求数据. 以下使用extjs4定义一个类 Ext.def ...

  4. 如何在Global.asax中判断是否是ajax请求

    今天在一个应用场景中需要在Global.asax中判断一个请求是否是ajax请求,而在ASP.NET MVC中已经提供了一个现成的扩展方法IsAjaxRequest: namespace System ...

  5. MVC中用View.bag保存json字符串。在js中使用,不用ajax请求。。。。

    有时候我们只需要使用一次json数据,这时候直接在后台查出json,然后用view.bag传到前台使用,就会很方便..(在前台用ajax请求的话,感觉有点多余..) 上代码 后台: public Ac ...

  6. JQuery发起ajax请求,并在页面动态的添加元素

    页面html代码: <li> <div class="coll-tit"><span class="coll-icon">& ...

  7. C# MVC 全局错误Application_Error中处理(包括Ajax请求)

    在MVC的Global.asax Application_Error 中处理全局错误. 如果在未到创建请求对象时报错,此时 Context.Handler == null . 判断为Ajax请求时,我 ...

  8. Vue中使用echarts,ajax请求的远程数据赋值给图表不刷新的问题和解决办法

    问题: vue-cli搭建的项目,在mounted钩子函数里面创建echarts图表,本地模拟数据可以正常显示,但是当将ajax请求的远程数据赋值给图表时,图表并不会刷新. 解决办法: 刚开始以为是v ...

  9. Vue中使用axios发送ajax请求

    作为前后端交互的重要技巧--发送ajax请求,在Vue中我们使用axio来完成这一需求: 首先是下载axios的依赖, npm install --save axios vue-axios 然后在ma ...

随机推荐

  1. 【Android】使用Gson和Post请求和服务器通信

    一.需求文档如下: URL:http://108.188.129.56:8080/example/cal 请求格式: {"para1":10,"para2":2 ...

  2. CloudStack cloud数据库op_host_capacity表type与控制板上的内容的对应关系

    listCapacity: type 名称 0 内存 1 CPU 3 主存储 4 公用IP地址 5 管理类IP地址 6 辅助存储 7 VLAN 9 本地存储 ViewResponseHelper.ja ...

  3. 对163k地方门户网站系统QQ互联功能修改

    163k地方门户网站QQ互联申请时遇到的问题: "禁止开发商强制用户重新注册或绑定其他帐号" 原因是用户登录完QQ还需要注册帐号或者绑定原有帐号 163k地方门户网站的QQ互联登录 ...

  4. linux里忘记root密码解决办法

    1:打开虚拟机,点‘启动’按钮, 2:出现上面这个界面时,键盘输入’i’,出现grub界面: 3:键盘输入e,出现如下界面: 4:选择第二行(kernel……) 5:键盘输入e,出现如下界面: 6:在 ...

  5. BZOJ 1061 志愿者招募

    http://www.lydsy.com/JudgeOnline/problem.php?id=1061 思路:可以用不等式的改装变成费用流. 将不等式列出,如果有负的常数,那么就从等式连向T,如果是 ...

  6. AltiumDesignerSummer9Build9.3.1.19182破解图文教程

    一.下载 AltiumDesignerSummer9Build9.3.1.19182 下载地址 http://www.verycd.com/topics/2769819/ 二.安装 一路确定啥的傻瓜式 ...

  7. 模拟IIC总线汇编程序软件包

    一.概述 为了非常方便地对 I2C 从器件进行快速的.正确的读写操作,我们为此而设计出虚拟 I2C 总线操作平台软件包.本软件包是主方式下的虚拟 I2C 总线软件包,只要用户给子程序提供几个主要的参数 ...

  8. C/C++ 指针的非空判断

    一定要分得清楚C和C++的“空指针常量”不是一样的.C标准不保证NULL等于0,所以做指针非空判断时,应该用if(p != NULL):因为“上下文转换到bool值”的统一性,C++就应该用if(p) ...

  9. MySQL脚本

    一. move.sql use items set @endTime=(select DATE_SUB(now(),INTERVAL 3 MONTH)); REPLACE INTO new_items ...

  10. 转:PHP变量作用域(花括号、global、闭包)

    花括号 很多语言都以花括号作为作用域界限,PHP中只有函数的花括号才构成新的作用域. 01 <?php 02 if (True) { 03     $a = 'var a'; 04 } 05   ...