从代码隐藏类向Jquery返回消息

Return message from code behind class to Jquery

本文关键字:返回 消息 Jquery 代码隐藏类      更新时间:2023-09-26

我有一个jquery表单,它将数据发送到代码隐藏类,以将数据存储在本地数据库中。当该方法成功存储数据时,该方法会返回一条消息,该消息应该通过jquery显示给用户,然后它应该自动将用户重定向到登录页面。

我已经设法将数据存储到本地数据库中,这是我通过jquery表单获得的,但我不知道如何实现向用户显示从该方法返回的消息的部分,以及如何将用户重定向到登录页面。

这是我的Jquery代码

$(document).ready(function () {

$("#register").click(function () {
    var userName=$('#userName').val();
    var firstName=$("#firstName").val();
    var lastName=$("#lastName").val();
    var email = $("#email").val();
    var password= $("#password").val();
    var cpassword= $("#cpassword").val();
    var country= $("#country").val();
    var request=JSON.stringify({
        userID: userName,
        firstName: firstName,
        lastName: lastName,
        email: email,
        password: password,
        country: country,
        userType:"Normal"
    });
    if (userName == '' || email == '' || password == '' || cpassword == '') {
        alert("Please fill all fields...!!!!!!");
    } else if ((password.length) < 8) {
        alert("Password should atleast 8 character in length...!!!!!!");
    } else if (!(password).match(cpassword)) {
        alert("Your passwords don't match. Try again?");
    } else {
            $.ajax({
            type:"POST",
            url: "SignUp.aspx/register",
            data: request,
            contentType: "application/json; charset=utf-8",
            dataType: "json",

            success: function (request) {
                alert("Successfully Registered"); //i just display this message since i don't know how to display the returned message from the method
            },
            error: function (err) { alert("Registration Failed, Please try again Later!") }
        });
    }
});
});

我的代码隐藏类是一个普通的c#类,它在存储数据后返回一条消息,表示已成功注册。我还没有把它贴在这里,因为它只是一个普通的课。

由于您使用asp.net并从类中返回JSON(这是dataType: "json"告诉我的),因此返回对象的形式为:

{ d : /*Your JSON Object*/ }

这是因为asp.net出于安全考虑将您的对象封装起来。返回数组是一个安全风险,因此asp.net确保您不能返回数组。

因此,您应该能够通过以下操作检索您的对象:

success: function (data, textStatus, jqXHR ) {
    console.log(data.d);
},
success: function (request) {
            alert(request.d)
        }