Ajax object doesn't exists uitls object doesn't exists

2016-07-07 15:18 来源:www.chinab4c.com 作者:ecshop专家

[报告BUG]
标题: Ajax object doesn't exists uitls object doesn't exists
[操作] 后台商品管理菜单下的商品相关管理
[结果] Ajax object doesn't exists uitls object doesn't exists
[系统环境] Linux (116.255.143.18) Web 服务器: nginx/0.8.53
PHP 版本: 5.3.4 MySQL 版本: 5.1.53-logECShop 版本: v2.7.2 RELEASE 20100604
[用户环境] Windows XpIE6.0/IE8.0/Firefox/chrome )
[其他] http://bbs.ecshop.com/thread-153233-1-1.html

回答:
ajax object doesn't existes的意思是ajax对象不存在,这个报错的代码在ecshop后台的admin/js/listtable.js里

/* $Id: listtable.js 14980 2008-10-22 05:01:19Z testyang $ */
if (typeof Ajax != 'object')
{
alert('Ajax object doesn\'t exists.');
}

if (typeof Utils != 'object')
{
alert('Utils object doesn\'t exists.');
}



如果出现ajax object doesn't existes提示肯定是你在载入admin/js/listtable.js没正确的载入js/transport.js文件

那么解决办法可以分以下几步:

一、检查js/transport.js是否正常,如js/transport.js不存在或js/transport.js的文件编码不对当然会报这个错

二、检查你的模板文件js载入顺序

如果后台的模板这样:

<!-- $Id: goods_list.htm 17126 2010-04-23 10:30:26Z liuhui $ -->

{if $full_page}
{include file="pageheader.htm"}
{insert_scripts files="../js/utils.js,listtable.js"}

<!-- 商品搜索 -->
{include file="goods_search.htm"}
<!-- 商品列表 -->
<form method="post" action="" name="listForm" **ubmit="return confirmSubmit(this)">
<!-- start goods list -->
<div class="list-div" id="listDiv">
{/if}

就没有问题,如果这样

{if $full_page}

{insert_scripts files="../js/utils.js,listtable.js"}
{include file="pageheader.htm"}
<!-- 商品搜索 -->
{include file="goods_search.htm"}
<!-- 商品列表 -->
<form method="post" action="" name="listForm" **ubmit="return confirmSubmit(this)">
<!-- start goods list -->
<div class="list-div" id="listDiv">
{/if}

这个时候就会报这个错误了

因为ecshop的pageheader.htm里引入了js/transport.js,放在{insert_scripts files="../js/utils.js,listtable.js"}
,就是在载入listtable.js前就载入了js/transport.js,反之就会报这个错

很多人发现这个问题,这个就是最终的原因和解决办法

ecshop出现ajax object doesn't existes提示的原因及解决办法