Ecstore中如何调用发起Ajax请求

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

时间: 2024-10-06 18:50:48

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

在jquery中写标准的ajax请求

1 $(function(){ 2 $.ajax({ 3 url:"http://www.microsoft.com", //请求的url地址 4 dataType:"json", // 接收json格式数据 5 async:true,//请求是否异步,默认为异步,这也是ajax重要特性 6 data:{"id":"value"}, //参数值 7 type:"GET", //请求方式 8 beforeSe

通过在jquery中添加函数发送ajax请求来加载数据库数据,以json的格式发送到页面

通过在jquery中添加函数发送ajax请求来加载数据库数据,以json的格式发送到页面 从数据库中查询仓库信息,显示在下拉菜单中: 首先,引入js插件,这里使用jquery-1.8.3.js <script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.8.3.js"></script> 当页面加载完成后,就应该发送ajax请求到数据库,

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

今天在一个应用场景中需要在Global.asax中判断一个请求是否是ajax请求,而在ASP.NET MVC中已经提供了一个现成的扩展方法IsAjaxRequest: namespace System.Web.Mvc { public static class AjaxRequestExtensions { public static bool IsAjaxRequest(this HttpRequestBase request); } } 但这个扩展方法只是针对HttpRequestBase,

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

有时候我们只需要使用一次json数据,这时候直接在后台查出json,然后用view.bag传到前台使用,就会很方便..(在前台用ajax请求的话,感觉有点多余..) 上代码 后台: public ActionResult Index() { List<Class1> str = new List<Class1>(); str.Add(new Class1(){ Name="gao", Age="18"}); str.Add(new Class

angular 中使用 axios 发起 http 请求

angular 中使用 axios /** * 在angular 中引入第三方 http 模块的使用, 以 axios 为例 * 有两种使用方法:(本文使用Promise简单封装) * 一. 直接在要使用请求的组件中 import axios from 'axios', 调用: axios.get/ axios.post ... * 二. 封装成服务: *          1. 引入 axios: import axios from 'axios' *          2. 用 promis

vue中使用vue-resource发送ajax请求

1 get请求 html代码: 界面如下: js代码: 2 post请求 html代码: 界面: js代码: 3 jsonp请求 原文地址:http://blog.51cto.com/11871779/2131133

jquery中的ajax请求用法以及参数详情

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项

想抛就抛:Application_Error中统一处理ajax请求执行中抛出的异常

女朋友不是想抛就抛,但异常却可以,不信请往下看. 今天在MVC Controller中写代码时,纠结了一下: public async Task<ActionResult> Save(int? postId) { if(!IsOwner(postId.Value, userId)) { //抛不抛异常呢? } } 在这个地方要不要抛异常呢? 如果不抛异常,就得这么写: public async Task<ActionResult> Save(int? postId) { if(!I

jquery - ajax 请求使用

1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持. 3.timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设置. 4.async: 要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求.如果需要发送同步请求