来自MVC操作结果的Javascript重定向不断追加域
我不是javascript方面的专家,并且已经为以下内容挣扎了一段时间。我希望有人能指导我 我在我的MVC网站上有这样一个动作链接来自MVC操作结果的Javascript重定向不断追加域,javascript,asp.net-mvc-4,Javascript,Asp.net Mvc 4,我不是javascript方面的专家,并且已经为以下内容挣扎了一段时间。我希望有人能指导我 我在我的MVC网站上有这样一个动作链接 <a href="@Url.Action("MyAction", "Home", new { name = "Test" })" class="myClick"> <img alt="" src="@ViewBag.ImageUrl"> </a> 我的控制器操作返回一个允许get的JsonResult对象,并且我确实将U
<a href="@Url.Action("MyAction", "Home", new { name = "Test" })" class="myClick">
<img alt="" src="@ViewBag.ImageUrl">
</a>
我的控制器操作返回一个允许get的JsonResult对象,并且我确实将URL返回到我的javascript函数。问题是windoe.open继续使用[myDomain]/[returnedUrl]打开
我做错了什么?使您的url成为绝对url(
http://www.my.site.com
)。否则,您的浏览器将自动解释您的url位于当前域中。如果结果url不是完整的url(http://some.domain/whatever
)然后浏览器会理解这意味着您要使用当前域。您不会取消默认重定向。添加返回false代码>在$.ajax(){…})之后代码>代码行我可能也会使用e.preventDefault()
。但是您必须将e
参数添加到事件处理程序函数中。
$(".myClick").on("click", function () {
$.ajax({
url: this.href,
type: this.method,
success: function (result) {
window.open(result.Url, '_blank');
}
});
});