Сообщение Ajax возвращает ошибку «Object XMLHttpReqest» - PullRequest
0 голосов
/ 30 ноября 2010

Может кто-нибудь предложить помощь по моей проблеме, пожалуйста?

У меня есть следующий код:

        function InsertNewMeeting(tripID, contact1ID, contact2ID) {
        $.ajax({
            type: "POST",
            url: "RetrieveSites.aspx/InsertNewMeeting",
            data: "{'tripID': '" + tripID + "','contact1ID: '" + contact1ID + "','contact2ID', '" + contact2ID + "'}",
            contentType: "application/json; charset=utf-8", 
            datatype: "json",
            success: function (msg) { alert('ok'); },
            error: function (msg) {alert(msg);}
        });
    }

Это предназначено для вызова WebService для публикации 3 целочисленных значений. WebService работает на 100%.

Однако, когда я вызываю функцию с веб-страницы, все, что я получаю, это ошибка «Object XMLHttpRequest».

Я проверил все переданные параметры, они на 100% в порядке.

Есть что-нибудь очевидное, что я пропускаю или должен делать?

Ответы [ 2 ]

1 голос
/ 30 ноября 2010

Ваши одинарные кавычки в вашей строке повсюду.

Данные, которые вы отправите, будут такими:

{'tripID': '[tripID]','contact1ID: '[contact1ID]','contact2ID', '[contact2ID]'}

Принимая во внимание, что это должно быть так:

{'tripID': '[tripID]','contact1ID': '[contact1ID]','contact2ID': '[contact2ID]'}
0 голосов
/ 30 ноября 2010

Вы можете сделать это, чтобы отправить правильный объект json на сервер:


function InsertNewMeeting(tripID, contact1ID, contact2ID) {
    var data = {'tripID': tripID, 'contact1ID': contact1ID, 'contact2ID': contact2ID};
    $.ajax({
        type: "POST",
        url: "RetrieveSites.aspx/InsertNewMeeting",
        data: JSON.stringify(data),
        contentType: "application/json; charset=utf-8",
        datatype: "json",
        success: function (msg) {
            alert('ok');
        },
        error: function (msg) {
            alert(msg);
        }
    });
}

Имейте в виду, что вам потребуется JSON2 , чтобы получить JSON.stringify () в браузерах, которые неУ него нет поддержки.

Другое дело, что вам нужно заключать свойства в двойные кавычки, поскольку это не JSON, если это просто одинарные кавычки.Попробуйте запустить JSON-строку через JSONLint , чтобы проверить, проверяется ли она.

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