繁体   English   中英

jQuery ajax()方法不起作用

[英]jQuery ajax() method not working

无法发送ajax()方法并验证用户。 登录页面应该首先使用md5.js对密码进行哈希处理,然后通过ajax()方法传递hashedPassword。 有任何想法吗

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="main">
        <div class="login-box">
            <div class="login-box-body">
                <p class="login-box-msg">Sign in to start your session</p>
                <div id="serverErrorDIV">
                    <button class="close" type="button" id="serverErrorClose"></button>
                    <span id="serverErrorMessage"></span>
                </div>
                <div class="login">
                    <div class="form-group has-feedback">
                        <input id="username" class="form-control" placeholder="Username">
                        <span class="glyphicon glyphicon-envelope form-control-feedback"></span>
                    </div>
                    <div class="form-group has-feedback">
                        <input id="password" type="password" class="form-control" placeholder="Password">
                        <span class="glyphicon glyphicon-lock form-control-feedback"></span>
                    </div>

                    <div class="row">
                        <div class="col-xs-4">
                            <button  id="loginBtn" class="btn btn-primary btn-block btn-flat">Sign In</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
<script>
        jQuery(document).ready(function () {
            Login.init();
            $('#username').focus();
        });

        function showErrorMessage(message) {
            $('#serverErrorMessage').html(message);
            $('#serverErrorDIV').removeAttr('style');
            $('#serverErrorDIV').removeClass('display-hide');     }


        function login() {
            var username = $('#username').val();
            var password = $('#password').val();

            if (username == "" && password == "") {
                showErrorMessage("Kindly enter a valid username & password.");
                $('#username').focus();
            }
            else if (username == "") {
                showErrorMessage("Kindly enter a valid username");
                $('#username').focus();
            }
            else if (password == "") {
                showErrorMessage("Kindly enter a valid password");
                $('#password').focus();
            }
            else {
                $('#loginBtn').attr("disabled", "disabled");
                $("#progressIcon").removeClass("hide");

                var hashedPassword = md5(password);

**它应该能够向控制器发送一个发布请求。** $ .ajax({url:'/ Account / Login',type:“ POST”,data:{用户名:用户名,//密码:密码,hashedPassword :hashedPassword,},

                   $.ajax({
                    url: '/Account/Login',
                    type: "POST",
                    data: {
                        username: username,
                        //password: password,
                        hashedPassword: hashedPassword,


                    success: function (result) {
                        if (result == "Failure") {
                            showErrorMessage("Invalid login attempt.");
                            $('#loginBtn').removeAttr("disabled");
                        }

                        else
                            window.location.href = result;
                    },
                    error: function (jqXHR, textStatus, errorThrown) {
                        if (textStatus == "Failure") {
                            showErrorMessage("There is some error while trying to login. Please contact Sales Departmet.");
                            $('#loginBtn').removeAttr("disabled");
                        }
                        else {
                            window.location.href = result;
                        }

                    }
                });
            }
        }

        $('#serverErrorClose').on("click", function () {
            $('#serverErrorDIV').addClass('display-hide');
            $('#password').val("");
        });

        $('#loginBtn').on("click", function () {
        });
    </script>

为了减少代码,md5.js和login.js脚本将不在此处显示

在jQuery.Ajax数据中,错误和成功是3个属性。 不能相互定义。

 data: {
                        username: username,
                        //password: password,
                        hashedPassword: hashedPassword,

请替换这样的代码,它应该可以工作。

 data: {
                        username: username,
                        //password: password,
                        hashedPassword: hashedPassword,
},

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM