Sergeyy84 Posted October 20, 2023 at 04:43 AM Share Posted October 20, 2023 at 04:43 AM Здравствуйте! При оформлении заказа клиенты часто вводят номер с 8-ки. Получается так: +7(892)611-11-11 и в итоге не хватает последней цифры в номере. Установлена симпла + в симпле настроена маска телефона. Подскажите как можно победить эту проблему? 0 Quote Link to comment Share on other sites More sharing options...
chixx Posted October 20, 2023 at 10:07 AM Share Posted October 20, 2023 at 10:07 AM В 20.10.2023 в 07:43, Sergeyy84 сказал: Здравствуйте! При оформлении заказа клиенты часто вводят номер с 8-ки. Получается так: +7(892)611-11-11 и в итоге не хватает последней цифры в номере. Установлена симпла + в симпле настроена маска телефона. Подскажите как можно победить эту проблему? Мне тоже эта тема интересна. Вот что-то дельное нашел на просторах гугла, но пока не понял, как работает) Ну и там для укр, по логике надо сделать для РФ 0 Quote Link to comment Share on other sites More sharing options...
Blast Posted October 20, 2023 at 11:01 AM Share Posted October 20, 2023 at 11:01 AM В 20.10.2023 в 07:43, Sergeyy84 сказал: Здравствуйте! При оформлении заказа клиенты часто вводят номер с 8-ки. Получается так: +7(892)611-11-11 и в итоге не хватает последней цифры в номере. Установлена симпла + в симпле настроена маска телефона. Подскажите как можно победить эту проблему? все зависит от используемого плагина для маски. симпла вроде inputmask юзает. Можно что-то типа такого $('.phone').inputmask({ "mask": "+7(999) 999-99-99", onKeyDown: function (event, buffer, caretPos, optsFunction) { if ((caretPos.begin == 3 || caretPos.begin == 0) && (event.key == '7' || event.key == '8' )) { $(event.srcElement).val('+7('); return false; } } }); если maskedinput то так $('.phone').mask('+7(000) 000-00-00', { onKeyPress: function(cep, event, currentField, options) { if (cep.length == 4 && cep != '+7(9') currentField.val('+7('); } } ); 0 Quote Link to comment Share on other sites More sharing options...
nikifalex Posted October 20, 2023 at 05:17 PM Share Posted October 20, 2023 at 05:17 PM // example of code for getting a mask of field public function getTelephoneMask($country) { if ($country==176) { return '+7(999)999-99-99'; } if ($country==220) { //украина return '+389(99)999-9999'; } if ($country==20) { //белоруссия return '+375(99)999-99-99'; } if ($country==109) { //казахстан return '+7(999)999-99-99'; } return ''; } если вы понимаете о чем речь 0 Quote Link to comment Share on other sites More sharing options...
Sergeyy84 Posted October 21, 2023 at 06:18 AM Author Share Posted October 21, 2023 at 06:18 AM (edited) Спасибо за варианты. А куда прописывать предложенный код для теста? В симпле где-то? Или тут только программист справится? Edited October 21, 2023 at 06:19 AM by Sergeyy84 0 Quote Link to comment Share on other sites More sharing options...
nikifalex Posted October 21, 2023 at 06:46 AM Share Posted October 21, 2023 at 06:46 AM В 21.10.2023 в 12:18, Sergeyy84 сказал: Или тут только программист справится? ну сейчас любая домохозяйка в декрете может стать программистом после двухдневных курсов 1 Quote Link to comment Share on other sites More sharing options...
Blast Posted October 21, 2023 at 07:22 AM Share Posted October 21, 2023 at 07:22 AM В 21.10.2023 в 09:18, Sergeyy84 сказал: Спасибо за варианты. А куда прописывать предложенный код для теста? В симпле где-то? Или тут только программист справится? $(document).ready(function(){ $('#customer_telephone').inputmask({ onKeyDown: function (event, buffer, caretPos, optsFunction) { if ((caretPos.begin == 3 || caretPos.begin == 0) && (event.key == '7' || event.key == '8' )) { $(event.srcElement).val('+7('); return false; } } }); }); попробуйте добавить такой код в common.js или (без document ready, т.е. без 1 и последней строчек) в simplecheckout.js после self.initMasks(); или во вьюху simplecheckout_customer в тег <script> я не проверял как именно оно сработает, надо чтобы этот код выполнился после применения маски симплой 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.