Usuário com melhor resposta
Erro - Formatar campo Telefone

Pergunta
-
Estou tentando formatar os campos Telefone do Formulário conta e estou com o seguinte erro.
"Ocorreu um erro com o evento personalizado deste campo:
Campo: windows
Evento: onload
Erro: o objeto não oferece suporte à propriedade ou método "attach event"
carrego o jscript como biblioteca e chama minha função no enveto onload.
function Mask(format) { var m = this; m.Format = format; m.Field = null; m.OnLoad = false; m.Filter = null; var onloadbound = false; var onsavebound = false; var onfocusbound = false; m.Mask = function () { if (!m.Field) { return alert("Mask is missing a field"); } m.Field.title = m.Format; if (!onfocusbound) { onfocusbound = m.Field.attachEvent("onfocusin", unmask); m.Field.attachEvent("onfocusout", mask); } if (m.OnLoad && !onloadbound) { onloadbound = mask() == undefined; } if (!onsavebound) { onsavebound = crmForm.attachEvent("onsave", mask); } } function unmask() { m.Field.setValue(strip()); } function mask() { var formated = m.Format; var splitValue = strip().split(""); if (splitValue.length == 0) { m.Field.setValue(null); return; } var placeHolderReg = new RegExp("#{1}"); for (var i = 0; i < splitValue.length; i++) { formated = formated.replace(placeHolderReg, splitValue[i]); } m.Field.setValue(formated); } function strip() { if (!m.Field.getValue()) { return ""; } var valueOnlyReg = new RegExp(m.Filter, "gi"); return m.Field.getValue().replace(valueOnlyReg, ""); } } function OnCrmPageLoad() { var phoneMask = new Mask("(##)###-####"); phoneMask.Field = Xrm.Page.getAttribute("telephone1"); phoneMask.Filter = "\\D"; //Unmask Filter - Strip Everything which is not a Number phoneMask.Mask(); var cellMask = new Mask("+(##) ### ####"); cellMask.Field = Xrm.Page.getAttribute("telephone2"); phoneMask.OnLoad = true; cellMask.Filter = "\\D"; cellMask.Mask(); } OnCrmPageLoad();
se poderem me dar um help fico grato!
Ou se alguem tiver um exemplo... obrigado
Respostas
-
Olá,
O erro está aqui "crmForm.attachEvent("onsave", mask);". Você não pode atachar um evento no objeto crmForm.
Você adaptar esse exemplo utilizando expressão regular:
http://www.crmvideoblog.com/?page_id=91
Abs,
Ricardo Alves
www.ricardoalves.me- Marcado como Resposta Maicon_A terça-feira, 14 de junho de 2011 14:49
Todas as Respostas
-
Olá,
O erro está aqui "crmForm.attachEvent("onsave", mask);". Você não pode atachar um evento no objeto crmForm.
Você adaptar esse exemplo utilizando expressão regular:
http://www.crmvideoblog.com/?page_id=91
Abs,
Ricardo Alves
www.ricardoalves.me- Marcado como Resposta Maicon_A terça-feira, 14 de junho de 2011 14:49
-