Jquery 无法在json post之后重定向
我的视图中有以下jquery代码Jquery 无法在json post之后重定向,jquery,json,asp.net-mvc-3,jquery-ui,modal-dialog,Jquery,Json,Asp.net Mvc 3,Jquery Ui,Modal Dialog,我的视图中有以下jquery代码 <script type="text/javascript"> $(document).ready(function () { $("#dialog-confirm").dialog({ autoOpen: false, modal: true, resizable: false, width: '500px' })
<script type="text/javascript">
$(document).ready(function () {
$("#dialog-confirm").dialog({
autoOpen: false,
modal: true,
resizable: false,
width: '500px'
});
$(".deleteLink").click(function (e) {
e.preventDefault();
var targetUrl = $(this).attr("href");
var dID = $(this).attr("id");
$("#dialog-confirm").dialog({
buttons: {
"Confirm": function () {
$.ajax({
url: '@Url.Action("DeleteSession")',
type: 'POST',
data: { id: dID },
success: function (data) {
window.location.herf = data.redirectToUrl;
}
});
},
"Cancel": function () {
$(this).dialog("close");
}
}
});
$("#dialog-confirm").dialog("open");
});
});
</script>
控制器方法DeleteSession返回一个Json结果
控制器:
[HttpPost]
public JsonResult DeleteSession(int id)
{
try
{
sRep.DeleteSession(id);
return Json(new {success = true, redirectToUrl = Url.Action("Index")});
}
catch (Exception e)
{
return Json(new {success = false, redirectToUrl = Url.Action("DisplayError", new { eerror =
"Unable to delete the course. " + "Internal error: " + e.Message})});
}
}
我已经检查了Json结果,它看起来很好。唯一的问题是window.location.herf=data.redirectToUrl;它不起作用。页面未重定向,对话框仍在屏幕上
知道我做错了什么吗?我想你是想做window.location.href
您的原始代码:
window.location.herf = data.redirectToUrl;
应改为:
window.location.href = data.redirectToUrl;
我想你是想做window.location.href
您的原始代码:
window.location.herf = data.redirectToUrl;
应改为:
window.location.href = data.redirectToUrl;
你也可以使用
$(window.location).attr('href',data.redirectToUrl);
你也可以使用
$(window.location).attr('href',data.redirectToUrl);
不幸的是,当您在一段代码上工作了很长一段时间后,通常会出现这种情况。这就是为什么每隔一段时间休息一下是件好事。当您第一次查看某些代码或稍作休息后,很容易发现一些小错误。不幸的是,当您已经在一段代码上工作了很长时间时,通常会出现这种情况。这就是为什么每隔一段时间休息一下是件好事。当你第一次看到一些代码或者在稍作休息后,发现一些小错误会更容易。哈哈,这不是我唯一的错误。。。我显然需要离开电脑一点。哈哈,这不是我唯一的打字错误。。。我显然需要离开电脑一点。这样做有什么好处吗?当原生js更短、更清晰时,为什么要使用jquery包装器?@serrghi更多的是跨浏览器支持问题。。。而且,我也是jquery的超级粉丝。。。我想这都是个人喜好。这样做有什么好处吗?当原生js更短、更清晰时,为什么要使用jquery包装器?@serrghi更多的是跨浏览器支持问题。。。而且,我也是jquery的超级粉丝。。。我想这完全是个人喜好