Problem with JQuery and variables

0

A few days ago I started working with JS and JQuery but I have a doubt that I do not understand when I try to send some variables by Api Rest.

JS

$('body').on('click', '#signupButton', function () {
    $("#signupButton").val("Procesando....");
    var statusEmail = $('#remail').attr('rel');
    var statusUsername = $('#rusername').attr('rel');
    var statusGender = $('#rgender').attr('rel');
    var statusSearch = $('#rsearch').attr('rel');
    if (statusEmail > 0 && statusUsername > 0 && statusGender > 0 && statusSearch > 0) {
        username = $('#rusername').val();
        password = $('#rpassword').val();
        gender = $('#rgender').val();
        search = $('#rsearch').val();
        email = $('#remail').val();
        encodedata = JSON.stringify({ "username": username, "password": password, "email": email, "gender": gender, "search": search });

        var url = $.apiBaseUrl + 'api/signup';
        ajaxPost(url, encodedata, function (data) {
            if (data.signup.length) {
                if (parseInt(data.signup[0].status)) {
                    var url = $.baseUrl + 'welcome.php';
                    window.location.replace(url);
                }
                else {
                    $("#signupButton").val("Sign Up");
                }

            }
            else {
                $("#signupError").show().html("El usuario o email ya existen.");
            }
        });
    }
    else {
        $("#signupError").show().html("Ingrese información válida!");
    }

    return false;
});

HTML

<form method="post" action="" name="signup" id="signup" autocomplete="off" autocomplete="false" >
        <div id="row">
            <input class="form-control reg" id="remail" type="text"  name="email" placeholder="Tu correo electrónico" autocomplete="off" autocomplete="false"  rel="0">
        </div>
        <div id="row">
            <input class="form-control reg" id="rusername" type="text" name="username" maxlength="25"  autocomplete="off" autocomplete="false" rel='0' placeholder="Nombre de Usuario">

            <div id="urlText"><span id="baseURL" class="labelURL" ></span><span id="usernameLabel"></span></div>
        </div>
        <div id="row">
            <select class="reg" id="rgender" name="gender" autocomplete="off" autocomplete="false"  rel='0'>
                <option selected>Seleccione su genero</option>
                <option value="1">Masculino</option>
                <option value="2">Femenino</option>
                <option value="3">Sin genero</option>
            </select>
        </div>

       <div id="row">
            <select class="reg" id="rsearch" name="search" autocomplete="off" autocomplete="false"  rel='0'>
                <option selected>¿Qué estas buscando?</option>
                <option value="1">Trabajo Eventual</option>
                <option value="2">Trabajo tiempo completo</option>
            </select>
        </div>

        <div id="row">
            <input class="form-control reg" id="rpassword" type="password"  name="password" placeholder="Crear una contraseña" autocomplete="off" autocomplete="false" >
            <div id="terms"><span class="agreeMessage">Con su registro, ud esta aceptando nuestros </span> <a href="terms.php" class="terms" target="_blank">terminos y condiciones.</a></div>
        </div>

        <div class="has-error  displaynone" id="signupError"></div>
        <div style="clear:both" class="text-center">
        <input type="submit" class="wallbutton buttonSignUp" value="Registrarse" id="signupButton">  
        </div>
    </form>

I do not understand why he always tells me invalid information.

    
asked by C00LMasterN 02.11.2017 в 14:28
source

1 answer

0

The problem I see is that all input fields have a rel attribute that is% "0" . This attribute is only "standard" when used in a link to a resource (tags <a> , <link> or <area> ), in the rest of the elements it does not make sense and your code does not seem to modify it (so I do not know what use do you give it), so the precondition to validate the inputs and selects of your code is never fulfilled (expect ALL attributes rel have a value greater than 0).

    
answered by 02.11.2017 / 15:42
source