IE теряет фокус на ссылке

В IE обнаружен загадочный баг.

Если ASP.Net страница:

  • делает (например, по нажатию на страницу) redi­rect на другую через anchor (т.е. otherPage.aspx#anchor)
  • в IIS настроен ISAPI_Rewrite (локально повторить не удалось)
  • браузер – IE (повторяется в т.ч. в 9-ом)

То может случиться так, что anchor “отбросится” и страниця загрузится как otherPage.aspx.

Выловить и перенастроить практически невозможно.

Единственный выход – вместо redi­rect вставлять в lit­er­al на странице “<script language=’javascript’>location.href = ‘otherPage.aspx#anchor’;</script>”. Можно дополнительно поставить проверку – делать такой redi­rect только если браузер ie. Название браузера искать в Request.Browser.Type.

О document.ready заботаться не стоит – redi­rect он и есть redi­rect.

Sitecore: Database returns old value

Вы исправили какие-то данные в базе Sitecore, но на странице у вас то же самое? Значит, надо проверить следующие варианты:

  1. Вы исправили в mas­ter, но забыли опубликовать это в web. Перейдите в web и провериться.
  2. Вы изменили не во всех языках. Вернитесь в mas­ter и проверьте, выбрав другой флаг. Этот шаг очень часто забывают.
  3. Вы используете дурацкую систему кэширования и она возвращает вам старые значения.

Чтобы 1 и 2 портили вам как можно меньше крови — везде, где можно, заменяйте текстовые константы на внутренние ссылки sitecore. И тогда даже если элемент куда-нибудь переедет,  ссылка будет в порядке.