JavaScript重新加载整个页面

JavaScript重新加载整个页面,javascript,jquery,Javascript,Jquery,我正在使用以下脚本验证注册表: $(document).ready(function() { $("#register").click(function() { var name = $("#name").val(); var email = $("#email").val(); var password = $("#password").val(); var cpassword = $("#cpassword").v

我正在使用以下脚本验证注册表:

$(document).ready(function() {
    $("#register").click(function() {
        var name = $("#name").val();

        var email = $("#email").val();

        var password = $("#password").val();

        var cpassword = $("#cpassword").val();

        if (name == '' || email == '' || password == '' || cpassword == '') {
            alert("Please fill all fields...!!!!!!");
        } else if ((password.length) < 8) {
            alert("Password should at least 8 character in length...!!!!!!");
        } else if (!(password).match(cpassword)) {
            alert("Your passwords don't match. Try again?");
        } else {
            $.post("register.php", {
                name1: name,
                email1: email,
                password1: password
            }, function(data) {
                if (data == 'You have Successfully Registered.....') {

                    alert("Tu cuenta de usuario ha sido creada");

                }

            });
        }
    });
});
被抛出,但页面将再次重新加载,并且输入字段中的所有文本将被删除

此外,当执行$.post调用且响应为预期响应时,警报:

alert("Password should at least 8 character in length...!!!!!!");
alert("Tu cuenta de usuario ha sido creada");
没有显示。 记录在数据库中创建,页面再次重新加载,但不会显示警报

编辑

这是表单的html部分:

<div class="form-bottom">
                                <form role="form" method="post" action="#" class="login-form" id="login_form">
                                    <div class="form-group">
                                        <label class="sr-only" for="form-username">Usuario</label>
                                        <input type="text" name="dname" placeholder="Usuario..." class="form-username form-control" id="name">
                                    </div>
                                    <div class="form-group">
                                        <label class="sr-only" for="form-email">Email</label>
                                        <input type="text" name="email" placeholder="Email..." class="form-email form-control" id="email">
                                    </div>

                                    <div class="form-group">
                                        <label class="sr-only" for="form-password">Contraseña</label>
                                        <input type="password" name="password" placeholder="Contraseña..." class="form-password form-control" id="password">
                                    </div>
                                    <div class="form-group">
                                        <label class="sr-only" for="form-confirm-password">Confirmar Contraseña</label>
                                        <input type="password" name="cpassword" placeholder="Confirmar Contraseña..." class="form-password form-control" id="cpassword">
                                    </div><br>
                                    <button type="submit" name="register" id="register" class="btn">Crear cuenta de usuario</button>


                                </form>

乌萨里奥
电子邮件
康瑟斯尼娜
Confirmar Contraseña

乌萨里奥岛酒店
可能是您的#注册是一个提交按钮,表单是发布的

可能是您的#注册是一个提交按钮,表单是发布的

当您单击按钮时,它将执行该按钮的默认操作。由于您的按钮具有类型
submit
,因此默认操作是提交表单。这是您在应用程序中看到的内容—您运行脚本,然后提交表单

为了防止发生这种情况,您需要对事件对象使用方法:

$("#register").click(function(e) {    // <- pass event object as first parameter
    e.preventDefault();   // <- call preventDefault to prevents form from submitting
    var name = $("#name").val();
    // the rest of your code
}

$(“#register”)。单击(函数(e){/当您单击按钮时,它将执行该按钮的默认操作。由于您的按钮具有类型
submit
,默认操作是提交表单。这是您在应用程序中看到的内容-您运行脚本,然后提交表单

为了防止发生这种情况,您需要对事件对象使用方法:

$("#register").click(function(e) {    // <- pass event object as first parameter
    e.preventDefault();   // <- call preventDefault to prevents form from submitting
    var name = $("#name").val();
    // the rest of your code
}

$(“#register”)。单击(函数(e){/您需要在单击事件结束时返回false

$(document).ready(function() {
$("#register").click(function() {
    var name = $("#name").val();

    var email = $("#email").val();

    var password = $("#password").val();

    var cpassword = $("#cpassword").val();

    if (name == '' || email == '' || password == '' || cpassword == '') {
        alert("Please fill all fields...!!!!!!");
    } else if ((password.length) < 8) {
        alert("Password should at least 8 character in length...!!!!!!");
    } else if (!(password).match(cpassword)) {
        alert("Your passwords don't match. Try again?");
    } else {
        $.post("register.php", {
            name1: name,
            email1: email,
            password1: password
        }, function(data) {
            if (data == 'You have Successfully Registered.....') {

                alert("Tu cuenta de usuario ha sido creada");

            }

        });
    }
    return false;  // put this it will solve your problem
});
});
$(文档).ready(函数(){
$(“#注册”)。单击(函数(){
var name=$(“#name”).val();
var email=$(“#email”).val();
var password=$(“#password”).val();
var cpassword=$(“#cpassword”).val();
如果(姓名=“”| |电子邮件=“”| |密码=“”| | cpassword=“”){
警告(“请填写所有字段…!!!!!”;
}否则如果((密码长度)<8){
警告(“密码长度应至少为8个字符…!!!!!”;
}如果(!(密码).match(cpassword))则为else{
警报(“您的密码不匹配。是否重试?”);
}否则{
$.post(“register.php”{
名字1:名字,
email1:email,
密码1:密码
},函数(数据){
如果(数据==“您已成功注册…”){
警报(“Tu cuenta de usuario ha sido creada”);
}
});
}
return false;//将此设置为可解决您的问题
});
});

您需要在单击事件结束时返回false

$(document).ready(function() {
$("#register").click(function() {
    var name = $("#name").val();

    var email = $("#email").val();

    var password = $("#password").val();

    var cpassword = $("#cpassword").val();

    if (name == '' || email == '' || password == '' || cpassword == '') {
        alert("Please fill all fields...!!!!!!");
    } else if ((password.length) < 8) {
        alert("Password should at least 8 character in length...!!!!!!");
    } else if (!(password).match(cpassword)) {
        alert("Your passwords don't match. Try again?");
    } else {
        $.post("register.php", {
            name1: name,
            email1: email,
            password1: password
        }, function(data) {
            if (data == 'You have Successfully Registered.....') {

                alert("Tu cuenta de usuario ha sido creada");

            }

        });
    }
    return false;  // put this it will solve your problem
});
});
$(文档).ready(函数(){
$(“#注册”)。单击(函数(){
var name=$(“#name”).val();
var email=$(“#email”).val();
var password=$(“#password”).val();
var cpassword=$(“#cpassword”).val();
如果(姓名=“”| |电子邮件=“”| |密码=“”| | cpassword=“”){
警告(“请填写所有字段…!!!!!”;
}否则如果((密码长度)<8){
警告(“密码长度应至少为8个字符…!!!!!”;
}如果(!(密码).match(cpassword))则为else{
警报(“您的密码不匹配。是否重试?”);
}否则{
$.post(“register.php”{
名字1:名字,
email1:email,
密码1:密码
},函数(数据){
如果(数据==“您已成功注册…”){
警报(“Tu cuenta de usuario ha sido creada”);
}
});
}
return false;//将此设置为可解决您的问题
});
});

在HTML表单中更改以下按钮代码

  <button type="submit" name="register" id="register" class="btn">Crear cuenta de usuario</button>
Crear cuenta de usuario

Crear cuenta de usuario
这是你的电话号码


唯一更改的是按钮的类型。

在HTML表单中,更改以下按钮代码

  <button type="submit" name="register" id="register" class="btn">Crear cuenta de usuario</button>
Crear cuenta de usuario

Crear cuenta de usuario
这是你的电话号码


唯一更改的是按钮的类型。

显示警报后,请尝试返回false。您还需要粘贴支持的html代码。看起来您正在提交页面,请检查按钮注册表(如果注册表是按钮),如果在表单中,有时您可以提交表单而不被通知。请尝试
$(“#注册表”)。单击(函数(e){e.preventDefault();
也可以共享您的html。在显示警报后尝试返回false您还需要粘贴支持html代码。看起来您正在提交页面,请检查您的按钮注册表(如果注册表是一个按钮),如果注册表在表单中,有时您可以提交表单而不必注意。请尝试
$(“#注册”)。单击(函数(e){e.preventDefault()
也可以共享您的html。@mvasco看一看这可能会有帮助谢谢,这是正确的答案,不需要更改任何其他内容。@mvasco看一看这可能会有帮助谢谢,这是正确的答案,不需要更改任何其他内容。谢谢,但有另一个答案可以解决这个问题。谢谢,但还有另一个答案回答可以解决问题。谢谢,但是还有另一个答案可以解决问题。我正在为以后的问题保存你的答案。这是一个非常好的解释,再次感谢谢谢,但是还有另一个答案可以解决问题。我正在为以后的问题保存你的答案。这是一个非常好的解释