Vistas de página en total

martes, 9 de diciembre de 2014

Script para limpiar el formulario después de hacer una insercion

A la hora de hacer nuestro registro nuestro formulario debe quedar completamente vacio como toque profesional y para ello generamos un script como el siguiente:

function cleanForm(idform){
    /*estamos leyendo el documento mediante su id de form y el reset es para resetear nuestro form*/
    document.getElementById(idform).reset();
}


y posteriormente en nuestro managedBean agregamos una linea que servira para ejecutar nuestro script a la hora de hacer una insercion correcta quedaria asi:

public String registerUser() throws Exception {
        /*haremos la validacion de que el password sea el mismo a la hora de confirmarlo con una condicional podremos realizarlo*/
        if(!login.getPass().equals(confirPassword)){
            /*leer el contexto como msj y poder lanzarlo a la vista FacesMessage(FacesMessage.tipo de msj, titulo, msj)*/
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Error", "Error de coincidencia de Password"));
            return "/User/RegisterUser";
        }
        /*se agregar a la variable pass de la clase login el pass encriptado*/
        login.setPass(Encrypting.encrypting(login.getPass()));
        usersDAO daoUsers = new usersDAO();
        daoUsers.registerUsers(this.user);
        loginDAO daoLogin = new loginDAO();
        daoLogin.registerLogin(login);
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Exito", "Datos insertados Exitosamente"));
        /*ejecutamos el java script*/
        RequestContext.getCurrentInstance().execute("cleanForm('frmRegisterUser')");
        return "/User/RegisterUser";
    }

debemos tomar en cuenta que nuestro RequetsContext debe ser importado de org.primefaces.context.RequestContext, despues mandamos a llamar el script desde nuestro template  asi:

<h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <h:outputStylesheet name="./css/default.css"/>
        <h:outputStylesheet name="./css/cssLayout.css"/>
        <h:outputScript library="js" name="jsControllers.js"/>
    </h:head>

y al final la aplicacion debe quedar asi despues de insertar correctamente:



No hay comentarios:

Publicar un comentario