您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
ecshop中ajax的调用原理
晓霜2025-01-06Ecshop商城教程已有人查阅
导读1:首先ecshop是如何定义ajax对象的。ecshop中的ajax对象是在js/transport.js文件中定义的。里面是ajax对象文件。声明了一个var Ajax = Transport;对象和一个方法Ajax.call
1:首先ecshop是如何定义ajax对象的。
ecshop中的ajax对象是在js/transport.js文件中定义的。里面是ajax对象文件。声明了一个var Ajax = Transport;对象和一个方法Ajax.call = Transport.run;
2:ecshop中ajax可以使用两种方式传递数据.一种是get方式,一种是post方式.
4:ecshop ajax函数里面.第三个参数就是回掉函数的名称。比如以上代码addToCartResponse 这个函数就是ajax处理结果的回调函数.
5:在ecshop的php代码中,一般是通过get或者post方式来接受函数。比如以下例子,如果接受的是对象。还需要用json数据格式来处理.比如以下
include_once('includes/cls_json.php');
$_POST['goods'] = json_str_iconv($_POST['goods']);
处理的返回结果,也需要是json格式发送给js
die($json->encode($result));
例如:
ecshop中的ajax对象是在js/transport.js文件中定义的。里面是ajax对象文件。声明了一个var Ajax = Transport;对象和一个方法Ajax.call = Transport.run;
2:ecshop中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');
3:ecshop中的 ajax可以是传递text数据,也可以是一个json对象。比如以下代码
goods.quick = quick;
goods.spec = spec_arr;
goods.goods_id = goodsId;
goods.number = number;
goods.parent = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');
里面的goods就是对象.而且是靠json来传递的。返回的结果result也是对象.4:ecshop ajax函数里面.第三个参数就是回掉函数的名称。比如以上代码addToCartResponse 这个函数就是ajax处理结果的回调函数.
5:在ecshop的php代码中,一般是通过get或者post方式来接受函数。比如以下例子,如果接受的是对象。还需要用json数据格式来处理.比如以下
include_once('includes/cls_json.php');
$_POST['goods'] = json_str_iconv($_POST['goods']);
处理的返回结果,也需要是json格式发送给js
die($json->encode($result));
例如:
<input type="button" name="search" value="{$lang.button_search}" onclick="searchUser();" />
<select name="user_search[]" id="user_search" size="15" style="width:260px" ondblclick="addUser()" multiple="true">
</select>
Javascript 代码
/**
* 按用户名搜索用户
*/
function searchUser()
{
var eles = document.forms['theForm'].elements;
/* 填充列表 */
var keywords = Utils.trim(eles['keyword'].value);
if (keywords != '')
{
Ajax.call('bonus.php?is_ajax=1&act=search_users', 'keywords=' + keywords, searchUserResponse, "GET", "JSON");
}
}
function searchUserResponse(result)
{
var eles = document.forms['theForm'].elements;
eles['user_search[]'].length = 0;
if (result.error == 0)
{
for (i = 0; i < result.content.length; i++)
{
var opt = document.createElement('OPTION');
opt.value = result.content.user_id;
opt.text = result.content.user_name;
eles['user_search[]'].options.add(opt);
}
}
}
Php代码
/*------------------------------------------------------ */
//-- 搜索用户
/*------------------------------------------------------ */
if ($_REQUEST['act'] == 'search_users')
{
$keywords = json_str_iconv(trim($_GET['keywords']));
$sql = "SELECT user_id, user_name FROM " . $ecs->table('users') .
" WHERE user_name LIKE '%" . mysql_like_quote($keywords) . "%' OR user_id LIKE '%" . mysql_like_quote($keywords) . "%'";
$row = $db->getAll($sql);
make_json_result($row);
}
本文标签:
很赞哦! ()
下一篇:ecshop后台路径修改
相关教程
图文教程
ecshop商品列表页怎么显示每个商品评论等级评论数量
步骤一:首先修改category.php 文件,定位到 category_get_goods() 函数部分;第二步(以官方默认模板为例):修改 htemes/default/library/goods_list.lbi 文件
ecshop首页发货查询里显示收货地址收货人的方法
1、修改 index.php 的 index_get_invoice_query() 函数部分;2、然后修改模板文件 library/invoice_query.lbi3、以上方法是完全显示收货人的全称,如果想要以“王**”、“李**”的形式来显示的话,继续进行下面修改
ecshop错误Redefining already defined constructor for class
本地PHP环境PHP5.4,安装ecshop2.7.3后,很多地方会报如下的错Redefining already defined constructor for class XXX
ecshop商城程序安装补丁的方法教程
各位朋友大家好,欢迎来到ECSHOP教程网系 列教程第三讲:系统ECSHOP补丁的安装方法!有很多客户都给ECSHOP教程网反馈:如何安装系统补丁?
相关源码
-
(自适应)蓝色厨卫厨房水龙头阀门水槽设备源码下载基于PbootCMS内核开发,深度适配厨卫设备行业特性。通过精准的产品展示模块与水效标识专区设计,有效呈现五金件工艺细节。响应式布局确保从手机到平板都能展示金属质感与水流动态效果。查看源码 -
(自适应响应式)pbootcms食品零食店日化用品网站源码下载基于PbootCMS内核开发的响应式模板,为食品零食、日化用品等行业量身定制。该模板通过可视化设计展现产品特色,帮助企业快速搭建专业官网查看源码 -
HTML5响应式健身俱乐部pbootcms网站模板下载为健身俱乐部、瑜伽中心及运动场馆设计的响应式网站模板,采用PbootCMS内核开发,支持一键替换图文适配健身器材销售、瑜伽工作室等多类型运动健康产业。查看源码 -
(自适应响应式)环保水净化处理设备阀门等网站源码下载基于PbootCMS内核开发的响应式模板,为水处理设备、空气净化器等环保企业设计,自适应手机端浏览。通过简洁高效的后台管理系统,助力环保科技企业快速建立专业在线展示平台。查看源码 -
(自适应)宽屏大气红色机械设备pbootcms模板源码下载为机械设备制造企业设计的响应式网站模板,采用PbootCMS内核开发。宽屏布局突出设备展示效果,红色工业风格贴合机械行业属性,支持PC端与手机端自动适配查看源码 -
(自适应响应式)高新技术科技能源pbootcms网站HTML5模板本模板基于PbootCMS内核开发,为高新技术、科技研发、能源技术等科技型企业设计。采用HTML5+CSS3前沿技术,具备完善的响应式布局,能够自动适配手机、平板和电脑等多种终端设备。模板设计风格简约大气查看源码
| 分享笔记 (共有 篇笔记) |
