Книга: ASP.NET MVC Framework
AjaxOptions
AjaxOptions
Класс AjaxOptions
представляет собой набор свойств, которые описывают разнообразные опции Ajax-запросов для вспомогательных методов MVC Framework. AjaxOptions
содержит следующие свойства:
? Confirm
— задает текст, который будет выведен в запросе пользователю перед осуществлением запроса. Установка этого параметра приведет к тому, что перед запросом на сервер у пользователя будет возможность подтвердить отправку запроса или отменить ее (рис. 7.4);
Рис. 7.4. Запрос подтверждения при использовании параметра Confirm
? HttpMethod
— устанавливает тип HTTP-запроса (GET или POST), который будет использоваться при формировании асинхронного запроса. Может содержать одно из двух значений Get или Post, по умолчанию установлено в Post;
? InsertionMode
— свойство задает одно из значений одноименного перечисления InsertionMode
: Replace, InsertBefore, InsertAfter
. Значение по умолчанию Replace
. Данное свойство устанавливает метод включения данных из ответа от сервера в элемент разметки: перезапись значения элемента, добавление до содержимого или после него. Данное свойство используется совместно со свойством UpdateTargetId
, указывающим идентификатор элемента разметки, в которое будет записано значение результата ответа от сервера;
? LoadingElementId
— задает идентификатор элемента разметки, который должен быть отображен во время Ajax-запроса. Использование данного свойства приведет к тому, что указанный элемент будет показан во время запроса, а затем скрыт. Использование этого свойства имеет смысл для демонстрации пользователю анимации ожидания во время продолжительных запросов;
? OnBegin
— задает наименование JavaScript-функции, которая должна быть вызвана непосредственно перед отправкой асинхронного запроса на сервер;
? Oncomplete
— задает наименование JavaScript-функции, которая должна быть вызвана сразу после того, как запрос был завершен, и до того, как результат запроса был записан в элемент разметки. Не имеет значения, был ли завершен запрос удачно или нет, функция, указанная через Oncomplete
, все равно будет вызвана. Данная функция будет вызвана до onFailure
или onSuccess
. Если требуется, чтобы результат не был записан в элемент разметки, то функция, указанная в Oncomplete
, должна вернуть false;
? OnFailure
— задает наименование JavaScript-функции, которая должна быть вызвана в случае, когда асинхронный запрос завершился с ошибкой;
? OnSuccess
— задает наименование JavaScript-функции, которая должна быть вызвана в случае, когда асинхронный запрос завершился успешно;
? updateTargetid
— задает идентификатор элемента разметки, в который должен быть записан результат асинхронного запроса на сервер. Вместе с этим параметром может быть использован параметр InsertionMode
, который указывает, каким именно способом должны быть записаны данные в элемент разметки;
? url
— устанавливает значение адреса сервера, куда следует отправить запрос. Свойство использовать не обязательно, когда класс AjaxOptions
применяется в Ajax.BeginForm
и Ajax.ActionLink
, где действие и контроллер задают данные адреса. В случае если Url
все же будет указан, он переопределит значения, определенные в этих методах.
Класс AjaxOptions
и его свойства используются во вспомогательных методах Ajax.BeginForm
и Ajax.ActionLink
для тонкой настройки асинхронного запроса и его параметров, а также действий, осуществляемых в ответ на изменение состояния запроса. Например, в следующием фрагменте кода AjaxOptions
используется для задания ряда параметров при вызове Ajax.ActionLink
:
<p>
<script type="text/javascript">
function OnError() {
alert("Произошла ошибка!");
}
</script>
<%= Ajax.ActionLink("получить время", "GetTime", "Home",
new AjaxOptions() {
,
Confirm="Bы уверены?",
UpdateTargetId = "timeText"
},
(object) null)
%><br/>
<span>Нажмите на ссылку для получения времени<^span>
</p>