没有给我回报用户和密码

时间:2013-03-27 17:28:00

标签: java ajax

我正在使用Java + AJAX进行登录,我有以下代码:

以我的形式:

<s:form id="formulario" action="javascript:validaUsuario();" method="get" >
  <s:textfield key="usuario" name="usuario" /> <br/>
  <s:password key="password" name="password" /> <br />
  <div style="float:left; padding-left:100px; padding-top:20px">
    <s:submit value="Enviar" />
  </div>
</s:form>

当我输入用户名和密码时,信息不会被发送到actionLogin。

的ValidateUser

javascript:validaUsuario()

function validaUsuario(
){
    alert($("#usuario").val());
    $.get("login2.action",{usuario:$("#usuario").val(), password:$("#password").val()}
    ,okusuario);

    return false;
}

function okusuario(data){

    if(data["rol"]==0){
        $("#error").text("Usuario / Contraseña incorrecto");
    }
    else{
        $("#usuario").html(data["user.login"]);

        }

}

struts.xml中

<action name="login2" class="com.gustavomasana.action.LoginAction" method="buscaRol">
            <result name="success">index.jsp</result>
</action>

LoginAction.java

public class LoginAction extends ActionSupport {

    private Collection<Usuario> Usuario;
    private Usuario user;
    private Integer rol;
    private String usuario;
    private String password;
    private String pagina;
    private String error;

    public String buscaRol()  {

        rol = Usuario_bo.buscaRol(usuario, password);
        if (rol==0){
            error = "El usuario / contraseña es incorrecto. ";
        }
        else{
            Map session = ActionContext.getContext().getSession();
            user=Usuario_bo.buscaUsuario(usuario, password);
            session.put("userSesion",user);
        }
        return SUCCESS;
    }


    public Collection<Usuario> getUsuario() {
        return Usuario;
    }

    public void setUsuario(Collection<Usuario> usuario) {
        Usuario = usuario;
    }

    public Usuario getUser() {
        return user;
    }

    public void setUser(Usuario user) {
        this.user = user;
    }

    public Integer getRol() {
        return rol;
    }

    public void setRol(Integer rol) {
        this.rol = rol;
    }

    public String getusuario() {
        return usuario;
    }

    public void setusuario(String usuario) {
        this.usuario = usuario;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getPagina() {
        return pagina;
    }

    public void setPagina(String pagina) {
        this.pagina = pagina;
    }

    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }

    public String getError() {
        return error;
    }

    public void setError(String error) {
        this.error = error;
    }

为什么吗

由于

1 个答案:

答案 0 :(得分:0)

您是否应该在onsubmit属性而不是action属性中插入javascript验证?像

这样的东西
<s:form id="formulario" action="somevalidurl" onsubmit="javascript:validaUsuario();" method="get" >