Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Adjuntar variables en un cuadro de alertas (Javascript)

Estas en el tema de Adjuntar variables en un cuadro de alertas (Javascript) en el foro de Javascript en Foros del Web. Hola como están estoy haciendo una aplicación sobre validación de Topics en Twitter y tengo mis condiciones para que lo que escribamos en el "textarea" ...
  #1 (permalink)  
Antiguo 04/08/2015, 12:48
 
Fecha de Ingreso: julio-2015
Mensajes: 8
Antigüedad: 8 años, 9 meses
Puntos: 0
Adjuntar variables en un cuadro de alertas (Javascript)

Hola como están estoy haciendo una aplicación sobre validación de Topics en Twitter y tengo mis condiciones para que lo que escribamos en el "textarea" cumpla con mis condiciones y si hay un error que aparezcan cuadros de alerta. Ahora lo que hice fue que primero se evaluara cada condición y que al final nos apareciera un solo cuadro de alerta con todos los errores que tuvo el usario al ingresar el texto en el "textarea". Asi esta mi codigo:
Código Javascript:
Ver original
  1. function validacion()
  2. {
  3.  
  4.          
  5.         var m1 = /(contains:|AND)+/.exec(document.valida.query.value);
  6.  
  7.   if(document.valida.query.value.length===0) {
  8.      var m2 = "You must write something in the box.";
  9.     }
  10.   if (document.valida.query.value.length >= 480) {
  11.       if (confirm("If you click 'ok' you will be redirected to a page to solve your problem, if not you will stay in this page " )) {
  12.            window.open("https://dev.twitter.com/streaming/overview/request-parameters#track");
  13.         }
  14.     }
  15.  
  16.   if (m1 !== null ) {
  17.       if (confirm("You can´t search for the word 'contains' or 'AND'. If you click 'ok' you will be redirected to a page to solve your problem, if not you will stay in this page " )) {
  18.            window.open("https://dev.twitter.com/streaming/overview/request-parameters#track");
  19.         }
  20.     }
  21.     if (document.valida.query.value.indexOf(":") !== -1) {
  22.           var m = /(text|from|to|retweet_of|twitter_lang)+:/.exec(document.valida.query.value);
  23.             if ( m === null) {
  24.                  var m3 = "The words that you typed in the box are not a valid operator.";
  25.       }
  26.      
  27.     }
  28.  
  29.                    
  30.  
  31.   if (/(Á|á|É|é|Í|í|Ó|ó|Ú|ú|Ñ|ñ)+/.exec(document.valida.query.value)){
  32.    var m4 = "En este campo de busqueda no puede ingresar caracteres con tilde";
  33.  }
  34.  
  35.   if (/(à|â|ä|À|Â|Ä|è|ê|ë|È|Ê|Ë|ì|î|ï|Ì|Î|Ï|ò|ô|ö|Ò|Ô|Ö|ù|û|ü|Ù|Û|Ü)+/.exec(document.valida.query.value)){
  36.      var m5 = "En este campo de busqueda no se puede ingresar este tipo de caracteres";
  37.   }
  38.  
  39.   if (/(ç|Ç)+/.exec(document.valida.query.value)){
  40.     var m6 = "En este campo de busqueda no puede ingresar caracteres con tilde";
  41.   }
  42.  
  43.   alert('-' + m2 + '\n' +'-'+  m3 + '\n' +'-' +  m4 + '\n' +'-' +  m5 + '\n' +'-' + m6);
  44. }

Este es mi funcion con las condiciones y todo, y mi cuadro de alerta al final de todo mi codigo. Sin embargo, al correrlo me aparece algo muy raro. Cuando una condicion no se cumple, es decir que lo que ingrese no me tiene algun error. Por ejemplo, puede ser que ingrese una palabra que no contenga "á" y esa condicion no se me cumple y la variable que puse dentro de esa condicion no se inicializa. Al finalizar todo me aparece mi cuadro de alerta con los errores que tengo pero los errores que no tengo aparecen como "undefined", es decir las variables que no se cumplieron por asi decirlo aparecen como "undefined".
Como puedo cambiar esto para que cuando mi texto no tenga algun error no aparezca ni "undefined" ni nada sino un espacio en blanco.
Gracias
  #2 (permalink)  
Antiguo 04/08/2015, 18:25
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

Debes crear las variables les coloque o no el mensaje de error, ejemplo:

Código Javascript:
Ver original
  1. var error1='';//defino la variable error1;
  2. var error2='';//defino la variable error2;
  3.  
  4. error2='Tienes un error 2';
  5. alert(error1+'-'+error2);
  #3 (permalink)  
Antiguo 04/08/2015, 20:40
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

Mejor aún, ve añadiendo cada mensaje de error a un array y luego los unes con el método .join().

Código Javascript:
Ver original
  1. var errores = [];
  2.  
  3. /* Condición 1 */
  4. errores.push("Mensaje de error 1"); //Solo si hubiera un error
  5. /* Fin de la condición */
  6.  
  7. /* Condición 2 */
  8. errores.push("Mensaje de error 2"); //Solo si hubiera un error
  9. /* Fin de la condición */
  10.  
  11. /* Condición 3 */
  12. errores.push("Mensaje de error 3"); //Solo si hubiera un error
  13. /* Fin de la condición */
  14.  
  15. /* Condición N */
  16. errores.push("Mensaje de error N"); //Solo si hubiera un error
  17. /* Fin de la condición */
  18.  
  19. alert(errores.join(" - "));

El resultado sería un mensaje de alerta con un contenido similar al siguiente:

Código Mensaje de alerta:
Ver original
  1. "Mensaje de error 1 - Mensaje de error 2 - Mensaje de error 3 - Mensaje de error N"

Solo se mostrarán los mensajes que fueron añadidos en cada condición siempre y cuando hayan sido insertados cada uno de ellos. Aunque sea algo obvio, vale la aclaración.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #4 (permalink)  
Antiguo 05/08/2015, 08:56
 
Fecha de Ingreso: julio-2015
Mensajes: 8
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

muchas gracias me resolviste la duda!!!
  #5 (permalink)  
Antiguo 05/08/2015, 09:14
 
Fecha de Ingreso: julio-2015
Mensajes: 8
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

Una pregiunta mas como puedo hacer para que mi codigo pueda leer cada linea de una area de texto tengo este codigo pero no se si este bien
Código Javascript:
Ver original
  1. function validateLines(){
  2. var lines = $('textarea').val().split('\n');
  3. for(var i = 0;i < (lines.length - (lines.length-1));i++){
  4.     validacion();
  5. }
  6. }
lo que quiero hacer es que cuando escriba en un formulario varias lineas mi codigo lea cada una de ellas y a cada una le aplique la funcion de todas mis condiciones, digamos que las verifique.
  #6 (permalink)  
Antiguo 05/08/2015, 09:20
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

¿Ya probaste con validacion(lines[i])?

¿Y por qué pones esa condición en el for? Solo debe de quedar la parte de lines.length - 1.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #7 (permalink)  
Antiguo 05/08/2015, 09:33
 
Fecha de Ingreso: julio-2015
Mensajes: 8
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Adjuntar variables en un cuadro de alertas (Javascript)

Ya funciono muchas gracias!!!

Etiquetas: adjuntar, cuadro, funcion, variable, variables
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 06:30.