Как я читаю то, что возвращается через $ .ajax ()?

Я не получаю предупреждение даже при том, что это успешно возвращает модель, которую я запрашиваю?

function editaddress(id) {
        $.ajax({
            type: "POST",
            url: "/Address/Edit/" + id,
            success: function (msg) {
                alert(msg);
            }
        });
    }

Что msg? Я думал, что это был, возможно, объект JSON?? Когда я отлаживаю, /Address/Edit/1 возвраты View(address); но как я могу считать тот объект, по моему мнению? Я должен сделать некоторое другое сообщение?

Частичное представление с этим сценарием является Диалоговым окном UI jQuery перечисляющие Адреса, и я хочу открыть другое Диалоговое окно UI jQuery сверху его для редактирования нажатой записи. Так, я должен так или иначе считать возвращенный объект модели. Как я делаю это?

Править:

public ActionResult Edit(int id)
    {
        Address address = dc.Addresses.Where(x => x.AddressID == id).First();

        return View(address);
    }
1
задан David Fox 2 August 2010 в 22:15
поделиться

3 ответа

Используйте firebug, консоль. Так вы сможете увидеть сделанный вами пост, параметры, которые вы передали, и ответ, который будет возвращен.

Ответом будет ваша переменная "msg"

1
ответ дан 2 September 2019 в 22:30
поделиться

msg - это данные, возвращаемые с URL "/ Address / Edit /" + id в формате POST. Не похоже, что вы передаете какие-либо данные в URL-адрес "/ Address / Edit /" + id . Если данные содержатся в id и вы хотите включить их в URL, вам следует использовать GET. Если URL-адрес - '"/Address/Edit.html" и вы хотите передать его id с помощью POST, вы должны включить data:` в свой jQuery.

  1. Я предлагаю вам сначала ввести весь URL-адрес, чтобы облегчить себе жизнь. Включите его от http: // до .whatever . Как только вы заставите его работать так, вы можете поиграть с удалением начала, но похоже, что вам может не хватать типа файла.
  2. Вы должны отформатировать свои данные и включить их в data:

Чтобы передать данные в post и jQuery, вы должны использовать формат data: "переменная1 = значение1 & переменная2 = значение2 ...", Ниже это проиллюстрировано с использованием вашего кода.

$.ajax(
{
    type: "POST",
    url: "http://www.yourdomain.com/Address/Edit.html",
    data: "id="+id,
    success: function (msg) 
    {
        alert("Data saved: " + msg);
    }
});

Взгляните на примеры на странице jQuery.ajax () :

Вы должны передать данные в data: , вы не можете передать данные в URL-адресе, если вы используете POST, вы можете сделать это только с помощью GET.

1
ответ дан 2 September 2019 в 22:30
поделиться

Также очень помогает использование Firebug с Firefox и использование консоли. Он покажет ответный вызов AJAX и содержащуюся в нем информацию.

0
ответ дан 2 September 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: