Показать сообщение отдельно
Старый 13.06.2008, 08:57   #2  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Полагаю добавить несколько регульяных выражений и проверять их по очереди:
var pattern1 = /^[0-9]\d{0}\(\d{3}\)\d{3}-\d{2}-\d{2}/;
var pattern2 = /^[0-9]\d{0}\(\d{4}\)\d{2}-\d{2}-\d{2}/;
var pattern3 = /^[0-9]\d{0}\(\d{5}\)\d{1}-\d{2}-\d{2}/;
if (pattern1.test(telephone)) {...}
else if (pattern2.test(telephone)) {...}
и т.д.
Примеры я привел чисто по аналогии. Синтаксис регулярных выражений JS можно легко найти в Интернет.

Честно говоря, не рекомендую вам делать такие вот проверки. Практика показывает, что пользователей ужасно раздражают подобный надзор со стороны системы. Ваш код (crmForm.all.telephone1.DataValue = "" затирает телефон если он был введен не в формате. Может возникнуть ситуация, когда менеджер запишет его со слов клиента, положит трубку и лишь затем попытается сохранить страницу. В это случае телефон будет утерян. Если необходимо вводить телефон в определенном формате (ума не приложу зачем вам это), то лучше просто пытаться его форматировать.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional

Последний раз редактировалось Артем Enot Грунин; 13.06.2008 в 09:06.