我在我的网站上使用了 jquery-1.8.0.min.js,在某些情况下我需要进行重定向。
我正在尝试这个:
$('<div></div>').appendTo('body')
.html('<div><h4>Some text....</h4></div>')
.dialog({
modal: true,
title: 'Dialog title...',
zIndex: 10000,
autoOpen: true,
width: 'auto',
resizable: false,
draggable: false,
buttons: {
Ok: function () {
$(this).dialog("close");
var loc = window.location;
var currentURL = loc.protocol + '//' + loc.host + loc.pathname;
var newUrl = loc.protocol + '//' + loc.host + 'Account/LogOn?ReturnUrl=' + urlencode(currentURL);
$('<div style="dispaly:none;"></div>').appendTo('<body>').html('<a id="loginredirect" href="' + newUrl + ' "><br /></a>');
$('#loginredirect').click();
}
},
close: function (event, ui) {
$(this).remove();
}
});
但这不起作用:-(所以我试试这个:
$('<div></div>').appendTo('body')
.html('<div><h4>Some text....</h4></div>')
.dialog({
modal: true,
title: 'Dialog title...',
zIndex: 10000,
autoOpen: true,
width: 'auto',
resizable: false,
draggable: false,
buttons: {
Ok: function () {
$(this).dialog("close");
var loc = window.location;
var currentURL = loc.protocol + '//' + loc.host + loc.pathname;
var newUrl = loc.protocol + '//' + loc.host + 'Account/LogOn?ReturnUrl=' + urlencode(currentURL);
$(window.location).attr('href', newUrl);
}
},
close: function (event, ui) {
$(this).remove();
}
});
但这也行不通...
知道问题出在哪里吗?
谢谢
编辑 1: 如果我尝试 window.location.hrej = newUrl,FF ErrorConsole 向我显示:NS_ERROR_MALFORMED_URI:组件返回失败代码:localhost/Content/scripts/jquery-1.8.0 中的 0x804b000a (NS_ERROR_MALFORMED_URI) [nsIDOMLocation.href]。 min.js
并且浏览器不会重定向到 IE、FF 和 Chrome 中的 newUrl...