我有以下代码:
.on('click', '#logoutLink', function (e) {
var $link = $(this);
var href = $link.attr('data-href');
});
在MVC动作方法中,我有:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
WebSecurity.Logout();
return RedirectToLocal("/");
}
在jQuery中我熟悉$('#xx')。load(href);但为此 我不需要对返回值做任何事情。有没有 我可以使用jQuery从网页中调用此操作方法 没有它是一个负载吗?
答案 0 :(得分:1)
使用jQuery ajax,您只需执行操作方法的帖子:
.on('click', '#logoutLink', function (e) {
var $link = $(this);
var href = $link.attr('data-href');
.ajax({
type: 'POST',
url: href,
data: data // if you have any or leave out
}).done(function(){ // do something when it is done, or don't });
});
或使用与此类似的简写版jQuery post:
.on('click', '#logoutLink', function (e) {
var $link = $(this);
var href = $link.attr('data-href');
$.post(href); // no callback required if you don't need to have it.
});
答案 1 :(得分:0)
似乎你最好使用window.location,因为看起来你想在功能结束时重定向。
如果您确实需要使用Ajax,请使用jQuery Ajax
$.ajax({
url: "LogOff"
}).done(function() {
window.location =
});