ecshop ajax

ecshop

15-10-29 15:12:20

1 引入 js/transport.js

 ecshop中的ajax对象是在js/transport.js文件中定义的。里面是ajax对象文件。声明了一个var Ajax = Transport;

对象和一个方法Ajax.call = Transport.run;

2 ajax 调用  GET 和POST

Ajax.call( 'user.php?act=is_registered', 'username=' + username, registed_callback , 'GET', 'TEXT', true, true );

Ajax.call('user.php?act=return_to_cart', 'order_id=' + orderId, returnToCartResponse, 'POST', 'JSON');


returnToCartResponse 是返回调用函数  result是返回值

function returnToCartResponse(result){
    document.getElementById("xxx").innerHTML=result;
}


4 POST发送json数据

  ecshop中的 可以是一个json对象。比如以下代码
  goods.quick    = quick;
  goods.spec     = spec_arr;
  goods.goods_id = goodsId;
  goods.number   = number;
   Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
  里面的goods就是对象.而且是靠json来传递的。返回的结果result也是对象.

 include_once('includes/cls_json.php');
 $_POST['goods'] = json_str_iconv($_POST['goods']);
  处理的返回结果,也需要是json格式发送给js
  die($json->encode($result));