我想阻止客戶將郵政信箱輸入到所選送貨方式(本例中爲UPS)的送貨地址。我可以覆蓋js/prototype/validation.js
插入一個新的驗證模式,但我不想分叉這樣的密鑰文件。如何悄悄地將新的驗證方法添加到Magento結帳
有沒有一種機制來悄悄地驗證客戶的送貨地址後,他們選擇通過Javascript的運輸方法,而不覆蓋核心文件?
我看到在validation.js
裏使用Validation.add
,所以有可能在覈心文件之外添加一個新的驗證方法?
,我想申請的正則表達式是
\b([P|p](OST|ost)?\.?\s?[O|o|0](ffice|FFICE)?\.?\s)?([B|b][O|o|0][X|x])\s(\d+)
如果驗證不能優雅地在JS執行,我有興趣的controller_action_predispatch_onepage_saveShippingMethod
該檢查的數據,並執行一個Ajax請求重定向回觀察員如果需要的話,請寄到送貨地址表。
不錯。很高興看到它的澳大利亞貢獻! :) –
輝煌的答案。通過這種方法,我希望爲英國郵政編碼添加一個正則表達式,但似乎你在一個字段上不能有多個validate-class,所以我有一個'alert'框,而只有當該國是英國時才觸發。我使用的正則表達式來自維基百科郵政編碼頁面,如果從結尾沒有一個3個字符並將其重新拼接,我會拼接一個空格。 –
回覆:「只有一個領域的驗證級」。我不知道這一點,將不得不進一步調查。 – clockworkgeek