2011-06-30 43 views
3

我正在使用Magento的網站上工作。Magento添加追蹤編號模板錯誤

當我進入銷售 - >訂單 - >查看(選擇任意訂單) - >發貨時,我在後端出現錯誤。

當我點擊添加跟蹤號碼時,沒有結果。 當我在我的螢火蟲檢查,有此錯誤顯示:

this.template is undefined 
http://www.myDomain.com/index.php/admin/sales_order_shipment/new/order_id/154/key/f58bdecb79687dd839f91cdc23bb1b9d/ 
Line 628 

我們不能動彈,因爲部份的錯誤之一。

Magento Version: 1.4.1.1 

會發生什麼問題?

+0

如果您去「發票」並在'創建貨件'框中打勾並在'添加追蹤號碼'後面打勾,它會起作用嗎? –

+0

所有添加追蹤號碼按鈕都不起作用,同樣的錯誤。即使在發票 – PinoyStackOverflower

+0

編輯後重新打開。 –

回答

7

你想看看在應用程序/設計/ adminhtml /默認/缺省的/模板/銷售/訂單/出貨/新建/ tracking.phtml:

在這裏,你會看到錯誤被提到了在Element.insert(螢火蟲......

var trackingControl = {}; 
trackingControl = { 
    index : 0, 
    add : function() { 
     this.index++; 
     var data = {index:this.index}; 
     Element.insert($('track_row_container'), {bottom: this.template.evaluate(data)}); 
     $('trackingC' + this.index).disabled = false; 
     $('trackingT' + this.index).disabled = false; 
     $('trackingN' + this.index).disabled = false; 
     this.bindCurrierOnchange(); 
    }, 

的原型插入方法的更多細節可以在這裏找到: http://www.prototypejs.org/api/element/insert

你也想希望確保下面的模板對象被設置爲這個文件的底部a s:

<script type="text/javascript"> 
//<![CDATA[ 
trackingControl.template = new Template('<tr>' + $('track_row_template').innerHTML.replace(/__index__/g, '#{index}') + '<\/tr>'); 
//]]> 
</script> 

這是this.template正在定義的位置。
http://www.prototypejs.org/api/template

有幾件事情嘗試:

1)嘗試不同的瀏覽器只是要確定它不是一個瀏覽器特定的錯誤。

2)嘗試通過/etc/modules/company_modulename/config.xml

3禁用任何第三方模塊)複製從Magento的的相同或更新版本的tracking.phtml的新版本。

+0

也值得確保你沒有從代碼中刪除'track_row_template'(或更改了ID),因爲它會導致模板評估失敗。 (上面提到的選項3將實現此目的。) –

+0

我的一個付款模塊導致了問題,但是當編譯啓用時,禁用模塊吃了app/etc/modules /並重新啓用編譯解決了問題,謝謝 – igrossiter