Foros del Web » Creando para Internet » Flash y Actionscript »

Alert JS en AS

Estas en el tema de Alert JS en AS en el foro de Flash y Actionscript en Foros del Web. Hola,tengo una duda con AS, busque algunos ejemplos de como usar alert de javascritp en flash, mas no encontre algo apropiado a mi proyecto... Tengo ...
  #1 (permalink)  
Antiguo 28/03/2006, 22:48
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
Alert JS en AS

Hola,tengo una duda con AS, busque algunos ejemplos de como usar alert de javascritp en flash, mas no encontre algo apropiado a mi proyecto...
Tengo un formulario de email en flash, lo q quiero hacer es validar si en el campo del correo el usuario escribio(.) o (@), se como validarlo, mi duda es cuando no ponga(,) o (@).. le salga una ventanita de alerta q diga verifique los datos...
Gracias de antemano..
  #2 (permalink)  
Antiguo 29/03/2006, 04:45
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 19 años, 7 meses
Puntos: 13
Hola B**. Para mostrar un mensaje en JS, podes usar este código:

getURL ("javascript:alert('Verifique los datos!')");

Espero te sirva.
Saludos. Lucas
  #3 (permalink)  
Antiguo 29/03/2006, 12:08
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
Cita:
Hola B**. Para mostrar un mensaje en JS, podes usar este código:

getURL ("javascript:alert('Verifique los datos!')");

con eso te sale el mensaje.. pero la validacion la debes hacer con los eventos del teclado de FLASH y no de javascript...

Saludos.
  #4 (permalink)  
Antiguo 29/03/2006, 13:10
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
Asi es, yo ya habia podido hacer de que me saliera la ventana de alerta... pero sale aunque pongan el arroba o el punto... pero que bueno q me dices q esa validacion la tengo q hacer con el teclado...de casualidad y si no es mucho pedir, no tendras un ejemplo por ahi?
  #5 (permalink)  
Antiguo 29/03/2006, 14:15
Avatar de luistar  
Fecha de Ingreso: marzo-2005
Ubicación: Argentina
Mensajes: 939
Antigüedad: 19 años
Puntos: 0
Código:
//solo verifica que contenga un punto y una arroba
String.prototype.pareceEmail = function() :Boolean{
	return this.indexOf("@") != -1 && this.indexOf(".") != -1;
}

//ejemplos de su uso
var correos:Array = new Array('[email protected]','yoni.pache@co','yoni.@pacheco','yonipache.co','yoni@pacheco');
trace("PARECE EMAIL\n----------------------------------------------");
for(var i in correos) trace(correos[i]+' -> '+correos[i].pareceEmail());
OTRA MANERA
Código:
///////////////////////////////////////-------------------------->
//credits:
// String.isEmail Method v2.0
// by Jonas Galvez ([email protected])
// please report bugs =)

String.prototype.esEmail = function():Boolean {
    var ref = arguments.callee;
    if(this.indexOf('@') == -1 || this.indexOf('.') == -1) return false;
    if(!isNaN(this.charAt(0))) return false;
    var email, user, domain, user_dots, domain_dots;
    if((email = this.split('@')).length == 2) { 
        if((domain = email[1]).split('.').pop().length > 3) return false;
        if((user = email[0]).indexOf('.') && domain.indexOf('.')) {     
            if(domain.lastIndexOf('.') > domain.length-3) return false;
            for(var c, t, i = (user_dots = user.split('.')).length; i--;) {
                c = user_dots[i]; t = !ref.$_text.call(c, '-', '.', '_');
                if(t || !isNaN(c)) return false;
            };
            for(var c, t, i = (domain_dots = domain.split('.')).length; i--;) {
                c = domain_dots[i]; t = !ref.$_text.call(c, '-', '.');
                if(t || !isNaN(c)) return false;
            };
        } else return false;
    } else return false;
    return true;
};
String.prototype.esEmail.$_punctuation = function() {
    if(this == "") return false;
    for(var i = arguments.length; i--;) {
        if(this.indexOf(arguments[i]) == 0) return false;
        if(this.indexOf(arguments[i]) == this.length-1) return false;
    };
    return true;
};
String.prototype.esEmail.$_text = function() {
    var ref = arguments.caller;
    if(!ref.$_punctuation.apply(this, arguments)) return false;
    var others = arguments; var checkOthers = function(str) {
        for(var i = others.length; i--;) if(str == others[i]) return true;
        return false;
    };
    for(var c, alpha, num, i = this.length; i--;) {
        c = this.charAt(i).toLowerCase();
        alpha = (c <= "z") && (c >= "a");
        num = (c <= "9") && (c >= "0");
        if(!alpha && !num && !checkOthers(c)) return false;
    };
    return true;
}; 
ASSetPropFlags(String.prototype, "isEmail", 1);

//ejemplos
var mas_correos:Array = new Array("[email protected]","[email protected]","[email protected]","joe@somewherecom","[email protected]","[email protected]","[email protected]","[email protected]","[email protected]","[email protected]","[email protected].","[email protected]","[email protected]","[email protected]","joe@[email protected]","[email protected]","@somewhere.com");
trace("\nES EMAIL\n----------------------------------------------");
for(var i in mas_correos) trace(mas_correos[i]+' -> '+mas_correos[i].esEmail());

stop();
esto último parece mostruoso, pero en la siguiente versión de ActionSctrip se podrá hacer en una línea usando con expresiones regulares

para usarlo solo tienes que llamarlo como método de una cadena
ejemp para verificar si el texto del campo de texto: 'email_txt' tiene formato de email

boton.onRelease = function(){
trace(email_txt.text.pareceEmail());
trace(email_txt.text.esEmail());
}

:D
__________________
Si digo que soy mentiroso. ¿Lo soy?
  #6 (permalink)  
Antiguo 29/03/2006, 15:29
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
Gracias luisstar, pero no era exactamente lo que necesitaba, buscaba algo para validar por medio del teclado como me habian dicho previamente..y luego ya q saliera la ventana de alerta en javascript, pero de todos modos, gracias..
  #7 (permalink)  
Antiguo 29/03/2006, 16:48
Avatar de luistar  
Fecha de Ingreso: marzo-2005
Ubicación: Argentina
Mensajes: 939
Antigüedad: 19 años
Puntos: 0
por medio del teclado? supongo que se refería a eventos de teclado

aquí te pongo un ejemplo de validar email
el texto se valida:
- a medida que escribes en el TextInput
- cuando presinas en el botón
- cuando presionas ENTER

no te pongo el .fla porque pesa como 600kb ya que usa componentes y ya casi me quedo sin espacio xD

este es el código que hace funcionar todo (es solo aplicar la funciones que te mencioné anteriormente)

Código:
///////////////////////////////////////-------------------------->
// String.isEmail Method v2.0
// by Jonas Galvez ([email protected])
// please report bugs =)

String.prototype.esEmail = function():Boolean {
    var ref = arguments.callee;
    if(this.indexOf('@') == -1 || this.indexOf('.') == -1) return false;
    if(!isNaN(this.charAt(0))) return false;
    var email, user, domain, user_dots, domain_dots;
    if((email = this.split('@')).length == 2) { 
        if((domain = email[1]).split('.').pop().length > 3) return false;
        if((user = email[0]).indexOf('.') && domain.indexOf('.')) {     
            if(domain.lastIndexOf('.') > domain.length-3) return false;
            for(var c, t, i = (user_dots = user.split('.')).length; i--;) {
                c = user_dots[i]; t = !ref.$_text.call(c, '-', '.', '_');
                if(t || !isNaN(c)) return false;
            };
            for(var c, t, i = (domain_dots = domain.split('.')).length; i--;) {
                c = domain_dots[i]; t = !ref.$_text.call(c, '-', '.');
                if(t || !isNaN(c)) return false;
            };
        } else return false;
    } else return false;
    return true;
};
String.prototype.esEmail.$_punctuation = function() {
    if(this == "") return false;
    for(var i = arguments.length; i--;) {
        if(this.indexOf(arguments[i]) == 0) return false;
        if(this.indexOf(arguments[i]) == this.length-1) return false;
    };
    return true;
};
String.prototype.esEmail.$_text = function() {
    var ref = arguments.caller;
    if(!ref.$_punctuation.apply(this, arguments)) return false;
    var others = arguments; var checkOthers = function(str) {
        for(var i = others.length; i--;) if(str == others[i]) return true;
        return false;
    };
    for(var c, alpha, num, i = this.length; i--;) {
        c = this.charAt(i).toLowerCase();
        alpha = (c <= "z") && (c >= "a");
        num = (c <= "9") && (c >= "0");
        if(!alpha && !num && !checkOthers(c)) return false;
    };
    return true;
}; 
ASSetPropFlags(String.prototype, "isEmail", 1);
//-------------------------->

var al_escribir:Object = new Object();
al_escribir.change = function(objeto:Object){
	valida_txt.text = objeto.target.text.esEmail() ? 'El correo es válido' : 'formato de email INCORRECTO';
}
correo.addEventListener('change',al_escribir);

var al_enviar:Object = new Object();
al_enviar.keyUp = function(objeto:Object){
	if(objeto.code == 13){ //tecla ENTER
		var alerta:String = objeto.target.text.esEmail() ? 'El correo es válido, estamos enviado el mensaje...' : 'formato de email INCORRECTO, verifique bien...';
		getURL ("javascript:alert('"+alerta+"');");
		trace(alerta);
	}
}
correo.addEventListener('keyUp',al_enviar);

var al_clickar:Object = new Object();
al_clickar.click = function(){
	var alerta:String = correo.text.esEmail() ? 'El correo es válido, estamos enviado el mensaje...' : 'formato de email INCORRECTO, verifique bien...';
	getURL ("javascript:alert('"+alerta+"');");
	trace(alerta);
}
enviar.addEventListener('click',al_clickar);

stop();
el TextInput tiene nombre de instancia 'correo'
el Button, nombre de instancia 'enviar'
y el campo te texto -> 'valida_txt'

parece complicado? xD
lo es un poco, pero es el camino correcto

:D
__________________
Si digo que soy mentiroso. ¿Lo soy?
  #8 (permalink)  
Antiguo 29/03/2006, 16:56
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
Código PHP:
 
///////////////////////
 
 
 
on(release)
{
arroba=false;
punto=false;
 
for (
i=0i<campodetexto.lengthi++)

car=subsrt(campodetexto,i,1)
if (
car=="@")
arroba=true; }
if (
car==".")
punto=true; }
}
 
if (
arroba==false)
getURL ("javascript:alert('Tonto!! los email llevan Arroba!')"); }
 
if (
punto==false)
getURL ("javascript:alert('Tonto!! los email llevan puntito!')"); }
 
}
 
 
 
//////////////// 
No me acuerdo como era en AS.. eso de extraer de la cadena un caracter (substr();? )... pero ahi te dejo la logica... creo que tb funciona en AS charArt... bueno ahi la idea...


Saludos
  #9 (permalink)  
Antiguo 29/03/2006, 19:06
 
Fecha de Ingreso: diciembre-2003
Ubicación: Caracas
Mensajes: 81
Antigüedad: 20 años, 3 meses
Puntos: 0
Uso una manera mas sencilla para validar una direccion de correo.

var cadena:String = campo_de_texto.text;

if (cadena.indexOf("@") >= 0 && cadena.indexOf(".", cadena.indexOf("@")) >= 0)
{ la direccion de correo es valida }

No solo me aseguro de que este la @ sino que tambien me aseguro que el dominio este bien escrito buscando . despues de la @
  #10 (permalink)  
Antiguo 30/03/2006, 01:57
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 2 meses
Puntos: 3
Me gusto esa ,Edumaca, por q valida q el usuario ponga el punto despues de la arroba,por q el q yo tenia validaba q existieran los 2, mas no en un orden... y pues ya por fin me salio todo lo q quiera, q validara y q lanzara una ventana de alerta de javascript por si hubo un error, y una de q si se envio el mail..
  #11 (permalink)  
Antiguo 30/03/2006, 04:38
Avatar de lucasiramos  
Fecha de Ingreso: agosto-2004
Ubicación: Santa Rosa, La Pampa, Argentina
Mensajes: 1.484
Antigüedad: 19 años, 7 meses
Puntos: 13
Cita:
Iniciado por B**
Asi es, yo ya habia podido hacer de que me saliera la ventana de alerta... pero sale aunque pongan el arroba o el punto... pero que bueno q me dices q esa validacion la tengo q hacer con el teclado...de casualidad y si no es mucho pedir, no tendras un ejemplo por ahi?
Ups! Yo te había entendido exactamente al reves , que necesitabas la ventana JS y no la validación...
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 02:27.