asp.net MVC如何阻止a标签的跳转
具体代码:<ahref="@Url.Action("Downloadfile_zjf","Home",new{s_fileName=listOfResource[i].R...
具体代码:
<a href="@Url.Action("Downloadfile_zjf", "Home", new { s_fileName = listOfResource[i].Reso_Img })" class="downLoadA" id="@listOfResource[i].Reso_Img">
当前要跳转到Controller中的一个方法里,但是在跳转前我要做一个判断:用户是否登录了
脚本是这样:
$(function () {
//登录
$(".downLoadA").click(function () {
var fileUrl = $(this).attr("id");
//异步判断用户是否登录!
$.ajax({
url: "/Home/CheckUserIsLogin",
data: '{}',
dataType: "text",
async: false,
success: function (e) {
/*1:登录;0:表示还没有登录*/
if (e == 0) {
$.get("../Home/UserLogin", { opType: "login" }, function (data) {
$("#loginForm").html(data);
$("#plMask").fadeIn(300);
$("#loginForm").fadeIn(300, function () { $(".loginUserName").focus(); });
});
return false;
}
return false;
},
error: function () {
showPromptBar("服务出现异常,请稍后再尝试!", null, null, null, 3000);
}
});
});
});
现在出现的问题是:异步成功后,执行e==0 中的代码,但同时也跳转了页面!
这里,我也查找了资料:关于a标签的点击事件;只要在最后加上 return false; 就可以让页面不能跳转了!我也使用,但还是不行? 求解! 展开
<a href="@Url.Action("Downloadfile_zjf", "Home", new { s_fileName = listOfResource[i].Reso_Img })" class="downLoadA" id="@listOfResource[i].Reso_Img">
当前要跳转到Controller中的一个方法里,但是在跳转前我要做一个判断:用户是否登录了
脚本是这样:
$(function () {
//登录
$(".downLoadA").click(function () {
var fileUrl = $(this).attr("id");
//异步判断用户是否登录!
$.ajax({
url: "/Home/CheckUserIsLogin",
data: '{}',
dataType: "text",
async: false,
success: function (e) {
/*1:登录;0:表示还没有登录*/
if (e == 0) {
$.get("../Home/UserLogin", { opType: "login" }, function (data) {
$("#loginForm").html(data);
$("#plMask").fadeIn(300);
$("#loginForm").fadeIn(300, function () { $(".loginUserName").focus(); });
});
return false;
}
return false;
},
error: function () {
showPromptBar("服务出现异常,请稍后再尝试!", null, null, null, 3000);
}
});
});
});
现在出现的问题是:异步成功后,执行e==0 中的代码,但同时也跳转了页面!
这里,我也查找了资料:关于a标签的点击事件;只要在最后加上 return false; 就可以让页面不能跳转了!我也使用,但还是不行? 求解! 展开
3个回答
展开全部
你可以这么写!
$(function () {
//登录
$(".downLoadA").click(function () {
var isTurnTo = false;
var fileUrl = $(this).attr("id");
//异步判断用户是否登录!
$.ajax({
url: "/Home/CheckUserIsLogin",
data: '{}',
dataType: "text",
async: false,
success: function (e) {
/*1:登录;0:表示还没有登录*/
if (e == 0) {
isTurnTo = false;
$.get("../Home/UserLogin", { opType: "login" }, function (data) {
$("#loginForm").html(data);
$("#plMask").fadeIn(300);
$("#loginForm").fadeIn(300, function () { $(".loginUserName").focus(); });
});
return false;
} else {
isTurnTo = true;
}
},
error: function () {
showPromptBar("服务出现异常,请稍后再尝试!", null, null, null, 3000);
}
});
return isTurnTo;
});
});
这个原理还是和 jquery 中的a 标签一样! return false 就可以了!
$(function () {
//登录
$(".downLoadA").click(function () {
var isTurnTo = false;
var fileUrl = $(this).attr("id");
//异步判断用户是否登录!
$.ajax({
url: "/Home/CheckUserIsLogin",
data: '{}',
dataType: "text",
async: false,
success: function (e) {
/*1:登录;0:表示还没有登录*/
if (e == 0) {
isTurnTo = false;
$.get("../Home/UserLogin", { opType: "login" }, function (data) {
$("#loginForm").html(data);
$("#plMask").fadeIn(300);
$("#loginForm").fadeIn(300, function () { $(".loginUserName").focus(); });
});
return false;
} else {
isTurnTo = true;
}
},
error: function () {
showPromptBar("服务出现异常,请稍后再尝试!", null, null, null, 3000);
}
});
return isTurnTo;
});
});
这个原理还是和 jquery 中的a 标签一样! return false 就可以了!
展开全部
你为什么要用A标签来做单击事件呢?不用要a标签,用其他的,做单击事件,当登录的时候用js跳转到目标也,没有登录,执行没有登录的操作,不就行了撒
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给a标签加个onclick=“return this.click”
这样的话 返回false的时候就不会跳转了
这样的话 返回false的时候就不会跳转了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询