Имам странен проблем, с който не мога да се справя в момента. Пробвах много неща и нищо не помага.
Имам проста страница с формуляр, съдържащ 4 скрити входа. Тези входове се попълват с jQuery. След като това е направено, изпращам формуляра с помощта на jQuery.
За възможността даден потребител да няма Javascript включих маркер metaRefresh
в моето събитие за зареждане на страница по време на първата заявка.
Работи според очакванията, когато потребителят няма JavaScript. Но когато е активиран, дори и пренасочването да бъде изпълнено, след тези дефинирани 10 секунди, мета тагът ще се изпълни, дори ако стигнах до следващата страница.
Наистина съм разочарован в момента, това е пълна глупост за мен, не разбирам как може да бъде това. Има ли някакви специални обстоятелства, причиняващи такова специално поведение?
Може би има и алтернативна опция за принудителна промяна на страницата, когато JS е деактивиран.
Допълнение:
Код за добавяне на Refresh-Tag:
var refreshTag = new HtmlGenericControl("meta");
refreshTag.Attributes.Add("http-equiv", "refresh");
refreshTag.Attributes.Add("content", "10; URL=" + Request.RawUrl + "&rp=3");
head.Controls.Add(refreshTag);
Код за опресняване:
във всички случаи етикетът за опресняване ще бъде изпълнен.
Response.Redirect(link, false);
Context.ApplicationInstance.CompleteRequest();
return;
OR
Response Redirect(link,true);
OR
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", link);