передача данных в метод webform с использованием $ .ajax - PullRequest
0 голосов
/ 29 марта 2012

это мой ManageCategory.js

function SaveArea() {
    debugger;
    if (flag_Area == 0) {
         Temp = {
            'Category_id': $("#txtAddArea_Id").val(),
            'Category_name': $("#txtAddArea_Name").val().substr(0, 1).toUpperCase() + $("#txtAddArea_Name").val().substr(1).toLowerCase()

        };



$.ajax({
            type: "POST",
            url: "WebForm1.aspx/InsertCategory",
            dataType: "json",
           // data: {},
            data: JSON.stringify(Temp),
            // data: JSON.stringify(contact, memberfilter, "\t"),
            contentType: "application/json; charset=utf-8",
            //processData: true,
            success: function (Data) {
                alert(Data);
                //AreaList = Data;
                if (Data == "true") {
                    oTable_Area.fnClearTable();
                    GetArea();
                    jsonParse = JSON.parse(AreaList.d);
                    oTable_Area.fnAddData(jsonParse);
                    jNSuccessMsg("New Category is added in database successfully.");
                }
                else if (Data == "false") {
                    jNErrorMsg("Attention", "Category is already exist in the database");
                }
                else {
                    jNErrorMsg("Error In Add Category", Data);
                }
            }

        });
       // debugger;
        Id_Area = null;


    }

это мой WebForm1.aspx.cs


 [WebMethod]
        public static string InsertCategory(string data)
        {
            IService1 wcfclient = ServiceHelper.InitService<IService1>();
            clsCategoryBLL obj = JsonConvert.DeserializeObject<clsCategoryBLL>(data);
            bool flag = false;
            flag = wcfclient.InsertCategory(obj);
            return (flag.ToString());
        }

Я не могу добавить данные в таблицы данных jquery.$ .ajax неправильно передает данные в InsertCategory (метод веб-формы).

где я ошибаюсь? Пожалуйста, помогите мне ... tnx заранее

1 Ответ

1 голос
/ 29 марта 2012

Параметры в вашем методе страницы InsertCategory должны соответствовать опубликованному объекту JSON.Чтобы ваш код работал с объектом Temp JSON, измените метод страницы InsertCategory на следующий (имена параметров чувствительны к регистру)

[WebMethod]
public static string InsertCategory(integer Category_id, string Category_name ){

// ...implementation...

}

Вам также не нужно использовать JSON.stringify дляПараметр data в $ .ajax, jQuery должен преобразовать данные в строку запроса, поэтому лучше, если вы просто передадите сам объект.

Возможно, вы захотите проверить эти сообщения в блоге для получения дополнительной информации о работе с методами страниц asp.net и jquery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...