JQuery AJAX ответ пуст

0

Я использую jQuery ajax, но ответ показывает пустое значение в всплывающем окне. Если я предупреждаю статическое сообщение в области успеха, то покажу свое сообщение, и если я попытаюсь предупредить ответ, данные будут показаны пустым.

Пожалуйста помоги

[WebMethod, ScriptMethod(UseHttpGet = true)]
public static string InsertData(string MainArr)
{
    string sSuccess=string.Empty;
    JavaScriptSerializer JSS=new JavaScriptSerializer();
    propertyClass[] arr=JSS.Deserialize<propertyClass[]>( MainArr);
    if (arr.Length > 0)
    {
        sSuccess = "SUCCESS";
    }
    else
    {
        sSuccess = "No";
    }
    return sSuccess;
} 

 public class propertyClass
 {
   public string UserName    { get; set; }
   public string Password    { get; set; }
   public string EmailId    { get; set; }
   public string Mobile    { get; set; }

}

Jquery

  $('[id$=submitdata]').click(function () {
            //Set Data in variable
            var MainArr = [];
            var vUserName = $('[id$=txtUserName]').val();
            var vPassword = $('[id$=txtPassword]').val();
            var vEmailId = $('[id$=txtEmail]').val();
            var vMobile = $('[id$=txtMobile]').val();

            //Push data in array
            MainArr.push({
                UserName: vUserName,
                Password: vPassword,
                EmailId: vEmailId,
                Mobile: vMobile
            });

            //Insert data
            $.ajax({
                type: "Post",
                url: "Validation.aspx/InsertData",
                data: JSON.stringify(MainArr),
                cache: false,
                success: function (data) {                        
                    alert(data);
                },
                error: function () { alert('error') }

            });

            return false;
        });
Теги:

1 ответ

0
Лучший ответ

Может быть, это помогло бы вам:

Способ 1

Клиентский код -

 $('[id$=submitdata]').click(function () {
        //Set Data in variable
        var MainArr = [];
        var vUserName = $('[id$=txtUserName]').val();
        var vPassword = $('[id$=txtPassword]').val();
        var vEmailId = $('[id$=txtEmail]').val();
        var vMobile = $('[id$=txtMobile]').val();

        //Push data in array
        MainArr.push({
            UserName: vUserName,
            Password: vPassword,
            EmailId: vEmailId,
            Mobile: vMobile
        });

        //Insert data
        $.ajax({
            type: "Post",
            url: "Validation.aspx/InsertData",
            data: JSON.stringify({ myArr: MainArr }),
            cache: false,
            success: function (data) {
                alert(data);
            },
            error: function () { alert('error') }

        });

        return false;
    });

Код на стороне сервера -

[System.Web.Services.WebMethod]
        public static string InsertData(List<string> myArr)
        {
            string sSuccess = string.Empty;
            JavaScriptSerializer JSS = new JavaScriptSerializer();
            propertyClass[] arr = JSS.Deserialize<propertyClass[]>(myArr[0].ToString());
            if (arr.Length > 0)
            {
                sSuccess = "SUCCESS";
            }
            else
            {
                sSuccess = "No";
            }
            return sSuccess;
        }

Способ 2

Клиентский код -

$('[id$=submitdata]').click(function () {
        //Set Data in variable
        var MainArr = [];
        var vUserName = $('[id$=txtUserName]').val();
        var vPassword = $('[id$=txtPassword]').val();
        var vEmailId = $('[id$=txtEmail]').val();
        var vMobile = $('[id$=txtMobile]').val();

        //Push data in array
        MainArr.push({
            UserName: vUserName,
            Password: vPassword,
            EmailId: vEmailId,
            Mobile: vMobile
        });

        //Insert data
        $.ajax({
            type: "Post",
            url: "Validation.aspx/InsertData",
            data: "{'myArr':" + JSON.stringify(MainArr) + "}",
            cache: false,
            success: function (data) {
                alert(data);
            },
            error: function () { alert('error') }

        });

        return false;
    });

Код на стороне сервера -

[System.Web.Services.WebMethod]
        public static string InsertData(List<string> myArr)
        {
            string sSuccess = string.Empty;
            JavaScriptSerializer JSS = new JavaScriptSerializer();
            propertyClass[] arr = JSS.Deserialize<propertyClass[]>(myArr[0].ToString());
            if (arr.Length > 0)
            {
                sSuccess = "SUCCESS";
            }
            else
            {
                sSuccess = "No";
            }
            return sSuccess;
        }
  • 0
    Ваш серверный код показывает неверный аргумент ошибки.
  • 0
    @ user3354710: Можете ли вы указать строку, в которой ошибка возврата кода.
Показать ещё 8 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню