我有一個從jQuery Post方法調用的aspx頁面(webforms)(它工作正常),但是來自後面的代碼的Response.Redirect方法確實不要使用重定向的URL重新加載瀏覽器。但是,它實際上確實會觸發該網址。 我很確定這與jQuery調用的頁面有關,但不知道爲什麼會發生這種行爲。asp.net response.redirect命中url,但沒有改變瀏覽器頁面
protected void Page_Load(object sender, System.EventArgs e)
{
if (!Page.IsPostBack)
{
//lid = Validation.StripToGUID(ObjToGUID(Request.QueryString("lid")))
lid = Validation.StripToGUID(ObjToGUID(Request.Form["lid"]));
string sid = null;
if (lid.Length == 36)
{
//retrieve the link (and product data) from the database
LiveItem_Data.DBConnStr = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
LiveItem o = new LiveItem();
o = LiveItem_Data.GetLive_ItemFromLID(lid);
if (HTTPStuff.RemoteFileExists(o.product_link))
{
Response.Redirect(o.product_link, true);
}
else
{
//generate an error
}
}
}
}
我通過代碼加強和product_link工作(手動剪切並粘貼到瀏覽器),和遠程頁面被稱爲(我測試使用具有記錄其他網站的鏈接)。 然而瀏覽器並未打開(嘗試過FF,IE,Opera,Chrome)新的URL。
jQuery的崗位:
$('.popInfoHG').click(function() {
var ListID = $(this).parent().find('[id*=hidlid]').val();
$.post("redir.aspx", { lid: ListID });
});
我覈實,HTTPredirect功能在IIS快速打開(從Visual Studio 2012)。難倒!
爲什麼你爲'Response.Redirect(o.product_link,true)保留'true';' –
要結束響應,但false也不起作用。 – MC9000