вызов функции JavaScript для ajax.actionlink
-
27-09-2019 - |
Вопрос
У меня есть следующая ссылка ajax.actionlink.я хочу добавить событие клика в эту ссылку действия.Как мне это сделать
<%= Ajax.ActionLink("text", "textaction", new { param = 1}, new AjaxOptions
{
OnSuccess = "updatePlaceholder",
UpdateTargetId = "result"
})%>
Решение
Обработчик событий щелчка уже добавлен в эту ссылку, поскольку вы используете Ajax.ActionLink
вспомогательный метод.Этот обработчик событий щелчка отменит действие по умолчанию и отправит запрос AJAX на адрес, на который указывает эта ссылка.Вы можете попробовать установить OnBegin вариант.
И если вы используете jquery в своем проекте, у вас может быть нормальный ссылку (без всего JavaScript, добавленного в вашу разметку с помощью Ajax.ActionLink
помощник):
<%= Html.ActionLink(
"text",
"textaction",
new { param = 1 },
new { id = "mylink" })
%>
а затем в отдельном файле javascript прикрепите обработчик события щелчка:
$(function() {
$('#mylink').click(function() {
// here you could execute some custom code
// before sending the AJAX request
$('#result').load(this.href, function() {
// success function
});
return false;
});
});
Таким образом можно добиться четкого разделения между файлами разметки и файлами JavaScript.Поскольку javascript будет храниться в отдельных файлах, которые будут кэшироваться клиентским браузером, вы уменьшите пропускную способность.
Другие советы
Вам нужно изменить код:
$ ('# myLink'). Нажмите (функция (e) {e.preventdefault (); .... делать то, что вы хотите