ecshop Ajax請求錯誤的處理方法
在使用ECshop的AJAX(即:transport.js)
IE有時候會出現(xiàn):ReferenceError: process_request is not defined,F(xiàn)F則出現(xiàn):transport.js/run() error:undefined,其實這完全和transport.js無關(guān)。那么問題出在哪里呢?
(1)首先找到445-447行發(fā)現(xiàn)了這兩句:
/* 定義兩個別名 */
var Ajax = Transport;
Ajax.call = Transport.run;
(2)然后再找到735發(fā)現(xiàn)了這句:
Ajax.on
哈哈....其實問題就是出在這句的showLoader函數(shù)里面。因為在該函數(shù)里753行有這段語句
if ( ! obj && process_request),而出現(xiàn)上述問題就是說變量process_request沒有定義??!
(3)為什么說該變量沒有定義呢?
原因很簡單,因為EC很多時候都是將這句話:
放在最后面的....在中途有其他什么處理、JS載入、JS運行而還沒運行到最下面的時候當(dāng)然就出現(xiàn)在上述的錯誤!!!
process_request這個變量到底有什么用呢?其實就是為了創(chuàng)建一個DIV層顯示“正在處理您的請求...”這個信息??!為什么要這樣實現(xiàn)呢?因為這樣可以支持多語言。
解決辦法:
(1)在showLoader函數(shù)體里面加入這句var process_request = '正在處理您的請求...';英文的話就改成英文了。。。
(2)將var process_request = "{$lang.process_request}";這句話放在
推薦文章
2025-01-18
2024-11-28
2024-11-09
2024-10-25
2024-06-25
2024-01-04
2023-11-06
2023-10-30
2023-10-13
2023-10-10
穩(wěn)定
產(chǎn)品高可用性高并發(fā)貼心
項目群及時溝通專業(yè)
產(chǎn)品經(jīng)理1v1支持快速
MVP模式小步快跑承諾
我們選擇聲譽堅持
10年專注高端品質(zhì)開發(fā)聯(lián)系我們
友情鏈接: