Базовый пример AJAX с ASP.NET MVC? - PullRequest
25 голосов
/ 19 апреля 2009

Я нахожусь в процессе создания демонстрационного приложения ASP.NET MVC для образовательных целей.

У меня есть изображение / ссылка, помечающая пост как оскорбительный. Я хотел бы запросить с сервера через AJAX пометить наступление и проверить, чтобы у пользователя была такая возможность.

Если пользователь делает, то я хочу пометить сообщение как оскорбительное в базе данных и вернуть, что флаг прошел. Если пользователь в конечном итоге НЕ имеет права помечать элементы, я хотел бы вернуть отрицательное сообщение клиенту, чтобы я мог открыть красивое окно jQuery, сообщающее, что оно не прошло.

Я пытаюсь сделать все это без полной обратной передачи / обновления.

Есть ли у кого-нибудь ссылки на примеры простых запросов AJAX, выполняемых с помощью MVC?

Ответы [ 2 ]

24 голосов
/ 19 апреля 2009

С jQuery это довольно просто. Допустим, ваша ссылка выглядит примерно так:

<a href="javascript:flagInappropriate(<%=Model.PostId%>);">Flag as inappropriate</a>

Создайте javascript для вызова действия в вашем контроллере, чтобы проверить и пометить, если необходимо:

function flagInappropriate(postId) {
    var url = "<CONTROLLER>/<ACTION>/" + postId;
    $.post(url, function(data) {
        if (data) {
            // callback to show image/flag
        } else {
            // callback to show error/permission
        }
    });
}

У вас метод действия в вашем контроллере, вероятно, будет выглядеть так:

[AcceptVerbs("POST")]
public bool FlagAsInappropriate(int id) {
    // check permission
    bool allow = CheckPermission();

    // if allow then flag post
    if (allow) {
        // flag post

        return true;
    } else {
        return false;
    }
}
0 голосов
/ 10 июля 2012

Вот пример использования объекта @Ajax. Проще говоря, это @ Ajax.ActionLink.

http://ovisdevelopment.com/davisisms/?p=82&preview=true&preview_id=82&preview_nonce=32c77db2e4

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