Foros del Web » Programando para Internet » Javascript »

Estraer primera letra y agregar secuencia

Estas en el tema de Estraer primera letra y agregar secuencia en el foro de Javascript en Foros del Web. Hola a todos tengo un formulario donde se tiene: Código HTML: <td > Nombre: </td> <td> <input type= "text" name= "nombre" value= "" size= "25" ...
  #1 (permalink)  
Antiguo 25/07/2012, 12:46
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Estraer primera letra y agregar secuencia

Hola a todos tengo un formulario donde se tiene:

Código HTML:
<td >Nombre:</td>
        <td><input type="text" name="nombre" value="" size="25" /></td>
     
      <td>Apellido Paterno</td>
        <td ><input type="text" name="ap" value="" size="25" /></td>

  
      <td>Apellido Materno:</td>
        <td ><input type="text" name="am" value="" size="25" /></td> 
Bien necesito extraer la primera letra del campo nombre, ap y am (ademas de agregarle un numero consecutivo 001)
ejemplo
Nombre: Ana
Apellido Paterno: Díaz
Apellido Materno: Balbuena

ADB001

Pero no sé mucho de javascript alguien podría ayudarme por fa
  #2 (permalink)  
Antiguo 25/07/2012, 13:06
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Estraer primera letra y agregar secuencia

puede buscar sobre funciones para manejo de cadenas en javascript, como substring http://www.desarrolloweb.com/articulos/726.php

para obtener el valor, puede usar:

Código Javascript:
Ver original
  1. var nombre = document.forms['name_form'].elements['nombre'].value;
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/07/2012, 15:52
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Lo hice asi
Código HTML:
<html >
<head>

<script type="text/javascript">
function poner(frm) {
  frm.usuario.value = frm.nombre.value.substr(0,1) + frm.ap.value.substr(0,1) + frm.am.value.substr(0,1); 
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
</head>

<body>
<form method="post" action="envia_registro.php" NAME="Formulario" enctype="multipart/form-data" style="margin:0px;">
<input type="text" name="nombre" id="nombre" onkeyup="poner(this.form)">
<input type="text" name="ap" id="ap" onkeyup="poner(this.form)">
<input type="text" name="am" id="am" onkeyup="poner(this.form)">
<input type="text" name="usuario" id="usuario" disabled>
</form>  

</body>
</html> 
Y funciona a hora que puedo hacer para que al principio agregue una A
y despues de extraer las iniciales del nombre, ap y am muestre el folio

ejemplo:
Nombre: Ana
AP: Díaz
AM: Gomez
Resultado
AADG001
  #4 (permalink)  
Antiguo 25/07/2012, 16:03
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

La A la agregue así
frm.usuario.value = "A"+frm.nombre.value.substr(0,1) + frm.ap.value.substr(0,1) + frm.am.value.substr(0,1);
Lo que no se es como hacer la secuencia de números para que se valla incrementando siempre en uno
  #5 (permalink)  
Antiguo 25/07/2012, 16:08
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Estraer primera letra y agregar secuencia

pero de que forma vas a incrementar el valor de uno en uno si no estas generando el codigo, para poder incrementarlo debes o bien guardarlo en una base de datos o de forma de prueba realizarlo al hacer click en un boton ya que si se realiza el incremento al presionar la tecla se generarian demasiadas veces el incremento del codigo.

Te recomendaria que realizar la generacion del codigo con un boton y hace cuantas mas veces das click al boton mas veces vas generando el codigo.
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #6 (permalink)  
Antiguo 25/07/2012, 16:12
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Cita:
Iniciado por Dradi7 Ver Mensaje
pero de que forma vas a incrementar el valor de uno en uno si no estas generando el codigo, para poder incrementarlo debes o bien guardarlo en una base de datos o de forma de prueba realizarlo al hacer click en un boton ya que si se realiza el incremento al presionar la tecla se generarian demasiadas veces el incremento del codigo.

Te recomendaria que realizar la generacion del codigo con un boton y hace cuantas mas veces das click al boton mas veces vas generando el codigo.
Ok gracias si uso un botón como podría meter el código de aumento?????
  #7 (permalink)  
Antiguo 25/07/2012, 16:35
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Estraer primera letra y agregar secuencia

Briss

Este es el codigo que debes implementar para generar tu codigo incrementando, ojo que a este codigo le falta validar que los campos no esten en blanco pero eso ya lo dejo a tu criterio

Código HTML:
Ver original
  1. <script language="javascript" type="text/javascript">
  2.     var x = 0;
  3.     var code = "";
  4.     function generarcodigo(){
  5.         // obteniendo el formulario
  6.         var f = document.forms['datos'];
  7.         // obteniendo los datos de nombres
  8.         var nombres = f.elements['nombres'].value.substr(0,1).toUpperCase();
  9.         // obteniendo los datos de paterno
  10.         var paterno = f.elements['paterno'].value.substr(0,1).toUpperCase();
  11.         // obteniendo los datos de materno
  12.         var materno = f.elements['materno'].value.substr(0,1).toUpperCase();
  13.         // obteniendo el object del usuario
  14.         var usuario = f.elements['usuario'];
  15.         var letter = "A";
  16.         // variable que almacenara mi codigo
  17.         var newcode = "";
  18.         if(x===0){
  19.             // generas un nuevo codigo
  20.             code = "001";
  21.         }else{
  22.             // variable que obtendra la longitud del incremento
  23.             var digitos = (x+1).toString().length;
  24.             // variable que solo tomara los ceros
  25.             var soloceros = code.substr(0,code.length - digitos);
  26.             // guardando nuestra variable
  27.             code = soloceros + (x+1).toString();
  28.         }
  29.         // generando el codigo
  30.         newcode = letter + nombres + paterno + materno + code;
  31.         // asignando el codigo a nuestro input
  32.         usuario.value = newcode;
  33.         x++;
  34.     }
  35. <form name="datos" id="datos">
  36.     Nombres: <input type="text" name="nombres" id="nombres" /><br/>
  37.     Ap. Paterno: <input type="text" name="paterno" id="paterno" /><br/>
  38.     Ap. Materno: <input type="text" name="materno" id="materno" /><br/>
  39.     <input type="text" name="usuario" id="usuario" readonly="readonly" />
  40.     <input type="button" value="Generar Codigo" onclick="generarcodigo();"/>
  41. </form>

Saludos
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #8 (permalink)  
Antiguo 25/07/2012, 16:38
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Estraer primera letra y agregar secuencia

@Briss, @MaycolAlavarez y @Dradi7 ya te ha dado unas pistas, pero falta que expliques correctamente tu objetivo.

Una vez que tenés esto
AADG001

Que se supone que se hace con ese dato, se pierde al cerrar la página, lo almacenas en otra parte para su posterior uso? y pregunto, la siguiente info, dónde va a parar
Nombre: Ana
AP: Díaz
AM: Gomez

Incrementar el número a continuación no es problema, el tema es saber si ese numero, en entradas posteriores a la página, debe arrancar desde 0 o continuar dónde estaba. Y que pasa si hay algún error al ingresar los datos y querés efectuar una corrección.

Exponé tu caso con más precisión, es probable que más que un caso para javascript debe ser resuelto con php u otro lenguaje del servidor

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 25/07/2012, 16:48
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Estraer primera letra y agregar secuencia

Cita:
Iniciado por emprear Ver Mensaje
@Briss, @MaycolAlavarez y @Dradi7 ya te ha dado unas pistas, pero falta que expliques correctamente tu objetivo.

Una vez que tenés esto
AADG001

Que se supone que se hace con ese dato, se pierde al cerrar la página, lo almacenas en otra parte para su posterior uso? y pregunto, la siguiente info, dónde va a parar
Nombre: Ana
AP: Díaz
AM: Gomez

Incrementar el número a continuación no es problema, el tema es saber si ese numero, en entradas posteriores a la página, debe arrancar desde 0 o continuar dónde estaba. Y que pasa si hay algún error al ingresar los datos y querés efectuar una corrección.

Exponé tu caso con más precisión, es probable que más que un caso para javascript debe ser resuelto con php u otro lenguaje del servidor

SAludos
Como tu mencionas emprear hay cosas que no se mencionan y no se aclaran lo que realmente quiere hacer con el código generado, validarlo, guardarlo en una Base de Datos, hay que tener en cuenta que no es recomendable hacer este tipo de generación de códigos por JavaScript porque podria ser manipulado por x personas y podria dar fatales errores en caso se haga la implementacion o se pase a producción.

Mas bien Briss la informacion y ayuda que se te brinda en el foro es aclarar y darte algunas ideas de como puedes tu implementar tu solución y adecuarla a tus necesidades ese es el fin de este foro y de muchos otros.

Saludos
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #10 (permalink)  
Antiguo 25/07/2012, 16:48
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Gracias por tu ayuda en efecto funciona... pero
si cada vez que registro un nuevo usuario ingreso al formulario siempre contaria un solo click

por ejemplo si en mi primera vez inserto
Angel
Ruis
Cortez

tendria AARC001

pero si cierro mi formulario (pag) y vuelvo agregar un usuario nuevo
seguiría con 001
como podría solucionar esto??? creo que debo insertar en mi base de datos primero pero = no sé como siguiria la secuencia
  #11 (permalink)  
Antiguo 25/07/2012, 16:53
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Estraer primera letra y agregar secuencia

Cita:
Iniciado por Briss Ver Mensaje
Gracias por tu ayuda en efecto funciona... pero
si cada vez que registro un nuevo usuario ingreso al formulario siempre contaria un solo click

por ejemplo si en mi primera vez inserto
Angel
Ruis
Cortez

tendria AARC001

pero si cierro mi formulario (pag) y vuelvo agregar un usuario nuevo
seguiría con 001
como podría solucionar esto??? creo que debo insertar en mi base de datos primero pero = no sé como siguiria la secuencia
Por eso Briss, emprear mismo te dijo que especificaras bien que es lo que realmente quieres hacer ahora estas poniendo otro problema que no especificaste en el principio y asi no se puede resolver problema por problema, trata de especificar cuales son los problemas que tienes y como estas tu planteando solucionarlos para darte la ayuda.

Ahora con respecto a guardarlo en Base de Datos, que lenguaje usas para realizar tus paginas y poder conectarse al Servidor PHP, ASPX, Java? y que Servidor de Base de Datos estas usando SQL Server, MySQL, Oracle?

Saludos
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #12 (permalink)  
Antiguo 25/07/2012, 16:55
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Bueno lo que intento a travez de este código es generar mi usuario (clave primaria)
por esto no deben ser repetitivos los datos
de ahi la secuencia en aumentar 001, 002, 003, etc

Les agradesco su ayuda creo que tendria que insertar el dato q se genera en mi tabla usuarios

usuario
AADR001

pero ahora como podría continuar la secuencia

es decir cuando se hace un dato en clave primaria solo se le pone autoincrementar y yap
xD algo asi intento hacer pero desde código, no en mi bd
Gracias por su ayuda
  #13 (permalink)  
Antiguo 25/07/2012, 16:56
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Uso php y mysql
  #14 (permalink)  
Antiguo 25/07/2012, 16:59
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Estraer primera letra y agregar secuencia

Agrego a lo anterior, y una vez más, a falta de información, ¿que cantidad de registros tienes pensado almacenar como máximo?, 100, 1000, 10000, más?
Si no son muchos, ni siquiera necesitas de una base de datos, podés guardar tdo en un archivo de texto ó un xml. Lo que si parece estar claro, es que necesitas de php y no solo de javascript

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #15 (permalink)  
Antiguo 25/07/2012, 17:00
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 10 meses
Puntos: 220
Respuesta: Estraer primera letra y agregar secuencia

Briss tienes varias opciones que puedes usar por ejemplo puedes usar un Stored procedure en tu MySQL o generar una clase en PHP, pero este foro es solo de JavaScript y deberias preguntar en donde quisieras hacer la generación de codigo en el respectivo foro correspondiente

En caso que necesites ayuda puedes enviarme un mensaje para poder ayudarte si es de JavaScript solo usa este mensaje del foro para responderte yo con las demas personas
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #16 (permalink)  
Antiguo 25/07/2012, 17:10
Avatar de Briss  
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 9 meses
Puntos: 12
Respuesta: Estraer primera letra y agregar secuencia

Gracias otra vez bueno tendré que checar a fondo como voy a mandar a insertar el dato que se genera

Etiquetas: formulario, input, letra, primera, secuencia
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.