Después
de comentar en la entrada “SageCRM - Campos Teléfono (I)” que mediante “javascript”
se podían manipular campos “especiales”
(como son los teléfonos y los emails), se me ocurrió mostrar mediante la
misma “técnica” y “tecnología”, como se pueden formatear los teléfonos para que
siempre se entren y se visualicen de la misma manera.
En
este ejemplo, mostraré los teléfonos separados de 3 en 3, como muestro a
continuación:
666 666 666
|
Para
ello, tendremos que hacer lo mismo que
en el post anterior, y añadir un bloque de <SCRIPT> dentro de la
traducción “CompanyPhone”
de la familia de Etiquetas “TabNames”.
El script para formatear el teléfono de empresa sería el
siguiente:
Teléfono
<script>if (window.addEventListener) { window.addEventListener("load",inicio,false); //FIREFOX } else { window.attachEvent("onload",inicio); //IE } function inicio() { obj=document.getElementById("phon_numberbusiness") obj.onchange = function(){FormatearTelefono(obj);}; } function FormatearTelefono(obj) { var TelOriginal=obj.value TelOriginal=TelOriginal.replace(/ /g,""); TelOriginal=TelOriginal.replace(/\./g,""); TelOriginal=TelOriginal.replace(/-/g,""); if (TelOriginal!="") { var TelFormateado=''; TelFormateado=TelOriginal.substring(0,3)+" "; TelFormateado+=TelOriginal.substring(3,6)+" "; TelFormateado+=TelOriginal.substring(6,9); obj.value=TelFormateado } } </script> |
Lo
que estamos haciendo con este script es, definir cuándo se cargue la página, la
propiedad onchange del campo del
número de teléfono.
A la
propiedad onchange le estamos asignando la función “FormatearTelefono”, y le
pasaremos como parámetro el mismo objeto.
La
función FormatearTelefono hace lo siguiente:
- Inicializa el valor actual del campo del número de teléfono (quitándole caracteres no válidos (espacios, puntos y guiones)
- Y si el valor del campo no es vacío, obtenemos los caracteres de 3 en 3 (separados por un espacio) y los volvemos a asignar al campo del número de teléfono.
Y
una vez más, de una manera muy sencilla, hemos vuelto a manipular una parte de
SageCRM no personalizable, con las propias herramientas de SageCRM.
No hay comentarios:
Publicar un comentario