Вопрос

Response.Redirect(string.Format("myprofile.aspx?uid={0}&result=saved#main",user.UserID));

указанный код переводится на

IE7 - myprofile.aspx?uid=933fdf8e-1be0-4bc2-a269-ac0b01ba4755&result=saved

ФФ- myprofile.aspx?uid=933fdf8e-1be0-4bc2-a269-ac0b01ba4755&result=saved#main

почему IE7 удаляет мой якорь?

редактировать:Я должен упомянуть, что использую это вместе с элементом управления вкладками пользовательского интерфейса jQuery.Я хочу, чтобы обратная передача переходила на определенную вкладку.

Это было полезно?

Решение

Это было бы довольно сложно, но если IE не работает, вы можете сделать это.

также передайте параметр, например.

uid=933fdf8e-1be0-4bc2-a269-ac0b01ba4755&result=saved&hash=main#main

Затем на вашей странице (перед тегом закрытия тела или в качестве события загрузки), только для IE, извлеките параметр, если он присутствует, и установите хеш вручную.

<!--[if IE]>
<script>
  if(document.location.href.indexOf('&hash=') != -1){
    //extract value from url...
    document.location.hash = extractedValue;
  }
</script>
<![endif]-->

Другие советы

Может быть, это проблема регресса IE6?

Ты пробовал обойти это добавив к нему знак &?

я использовал RegisterClientScriptBlock выдавать window.location.

Что-то вроде этого:

string url = String.Format("{0}RegForm.aspx?regId={1}#A", this.CurrentFolderUrl, this.RegId);

Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "redirectToClientPage", String.Format("window.location='{0}'", url), true);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top