Маска для поля телефон
Доброго времени суток форумчане!
нужна ваша помощь, есть поле для ввода телефона, на нем висит маска: $(function(){ $.mask.definitions["1"] = "[0123456789]"; $(".phone").mask("+38 (099) 999-99-99",{placeholder:" "}); }); вот тут, если нажать на поле телефон, вы увидите маску +38(0... Я хочу сделать так что бы пользователям России выводилось +7 Ну или, если есть идеи поудобней, то я против не буду |
Ммм… По-моему, ты никак не узнаешь из js локаль юзера. А даже если и узнаешь, то у юзера из Украины может стоять русская и наоборот. Так что тебе нужно юзать geoip на сервере и передавать на клиент, а там, в зависимости от страны, менять маску.
|
Хорошо, а можно сделать, что бы при нажатии на это поле сначало был селект с выбором страны, после выбора он заменялся на необходимую маску?
|
Можно. У плагина есть метод unmask, так что, наверное, можно инициализировать инпут заново с другими параметрами.
<label><input type="radio" value="ua" name="lang"/>ua</label> <label><input type="radio" value="ru" name="lang"/>ru</label> <script src="//yandex.st/jquery/1.8.0/jquery.js"></script> <script> $('[name="lang"]').on('change', function (e) { if (e.target.value === 'ua') { $(".phone").unmask(); $(".phone").mask("+38 (099) 999-99-99",{placeholder:" "}); } else if (e.target.value === 'en') { $(".phone").unmask(); $(".phone").mask("+7 (099) 999-99-99",{placeholder:" "}); } }); </script> |
это мне нужно создать селект с 2-мя опциями их значения "ua" и "en"
|
А подскажите еще, что может быть за беда?
Когда локально НЕ-заполняю форму и жму отправить, курсор кидает на не заполненное поле, то есть пока не заполню, форма не отправится. Но когда заливаю этот же скрипт на хостинг, там проверки не ведет, отправляет даже не заполненные поля! почему и как исправить? |
F12 и смотри, что тебе умная консоль скажет.
|
Здравствуйте,
подскажите пожалуйста как тут можно сделать тоже самое? <script src="<?php echo get_template_directory_uri(); ?>/includes/js/jquery.maskedinput.min.js"></script> <script type="text/javascript"> jQuery(function($) { $.mask.definitions['~']='[+-]'; $('#cp_contact_number').mask('+38 (999) 999-99-99'); }); </script> |
Часовой пояс GMT +3, время: 11:10. |