Подобряване на Magento one-page-checkout :: Добавяне на малко използваемост - маски и т.н.

Току-що разработих модул за плащане и той работи добре с моята банка. Състои се от обичайните елементи като въвеждане на текст за номер на кредитна карта и cvc и др.

След това реши да добави малко функционалност и използваемост. JQuery.Payment е просто и безпроблемно разширение. Добавих го към главния блок, зареден е успешно.

Но така и не успях да го прикача към входа.

jQuery('#pos_cc_number').payment('formatCardNumber');

С или без document.ready; без късмет. След това поставих горния израз на JQuery в конзолата на Chrome и всичко работи гладко.

Също така тествани JQuery кликвания събития и те също не бяха прикачени към входни елементи. Ако можех да го накарам да работи, смятам да използвам и credit-card-dimmer .

Наистина търсих усилено, но явно пропускам нещо. Всяка помощ ще бъде оценена.

Благодаря!

PS: Тествано на Magento CE 1.7.0.2 - Classic OnePage-Checkout.


person enesismail    schedule 26.04.2013    source източник
comment
Опитахте ли да го заредите в долния колонтитул? Понякога това трябваше да се направи, когато Mage зарежда неща в DOM.   -  person Zak    schedule 26.04.2013
comment
@Zak Обмислих това и преди да прикача някакво събитие към него, тествах дали елементът съществува в DOM или не. Вътре е.   -  person enesismail    schedule 26.04.2013
comment
Без съмнение е exists .. Но прикрепен ли е към JQuery? Опитвали ли сте да използвате .on() просто за безопасност?   -  person Zak    schedule 26.04.2013


Отговори (1)


По подразбиране Magento използва плащане на една страница. Когато използвате плащане на една страница, само първата стъпка за плащане се зарежда в готов документ. Остатъкът се зарежда от AJAX, докато преминавате през стъпките, така че елементът, който търсите, не е там, когато го търсите.

Изглежда, че обектът за плащане в opcheckout.js има удобен метод addAfterInitFunction, който можете да използвате, за да изпълните какъвто и да е код, от който се нуждаете, след като стъпката за плащане е заредена.

person wierdo    schedule 27.04.2013
comment
Ще го проверя и ще докладвам. Благодаря. - person enesismail; 27.04.2013
comment
Радвам се, че съм полезен! :) - person wierdo; 28.04.2013