PDA

Ver la Versión Completa : Formato con cadenas


Coco_jac
19-06-2007, 16:14:08
Hola amigos tengo un pequeño problema, miren tengo 2 cajas de texto, ambas representan un codigo de servicio unico (la primera caja 10 digitos, la segunda 2 digitos ) Codigo servicio :0000125457 - 28
Mi problemas es poder dar formato a la primera caja la cual consiste en 10 digitos, los 4 primeros son ceros 0000125457, ya que el usuario solo tendria q digitar los 6 restantes y al pasar el foco se debe aplicar el formato deseado

Espero sus comentarios muchas gracias de antemano.

jhonny
19-06-2007, 16:33:38
Hace poco hablamos de algo parecido, en otro hilo, pero de todas maneras colocare aquí el ejemplo ya que lo tengo a mano y además por lo que estoy algo enfermo me da pereza buscar el otro hilo:
Edit1.Text := StringOfChar('0', 10 - Length(Edit1.Text))+Edit1.Text;
espero te sirva.

Coco_jac
19-06-2007, 16:35:57
Hola gracias por responder, pero lo que necesito es hacerlo en Javascript

jhonny
19-06-2007, 16:39:15
Hola gracias por responder, pero lo que necesito es hacerlo en Javascript

Jejeje, Me imagino que esto les da una idea de lo enfermo que estoy, :D. No había notado que estaba en el foro de HTML y demás compañeros. Disculpa.

Mick
19-06-2007, 17:19:32
Javascript es mas que pobre, en funciones de formateo de strings, no trae practicament nigun metodo o funcion util.

Para formartear strings usando el potente formato de printf de C, puedes
descargar esta funcion implementada en javascript desde esta pagina web:

http://www.vladdy.net/Demos/printf.html

Basta ver el codigo fuente de la pagina y recoger la funcion printf, se puede usar libremente en cualquier proyecto siempre que se mantenga el copyright en el codigo fuente.

Despues en tu caso se usaría algo asi, para realizar el formateo:


printf('%010d - %02d', 843433, 12);


PD: En dephi ya existe una funcion muy parecida, de modo que no hace falta romperse la cabeza realizando formateos manuales, se haria del siguiente modo:

Format('%10.10d - %2.2d', [843433,12]);