2011-01-10 2 views
1

Когда у меня есть это, на мой взглядMVC.Net HTML кодирование, IE7 против других браузеров

<a href="../Product/Category/<%= Html.Encode(item.Category) %>/Default.aspx?partial=False"> 
    <%= Html.Encode(item.Category)%></a> 

Он делает, как ожидается, в IE8 & FF

<a href="../Product/Category/Sauces%20&amp;%20Toppings/Default.aspx?partial=False"> 
    Sauces &amp; Toppings</a> 

, но не корректно отобразить в IE7

<a href="../Allergen/Category/Sauces &amp; Toppings/Default.aspx?partial=False"> 
    Sauces &amp; Toppings</a> 

В частности, IE7 расшифровывает значение свойства href.

Как получить IE7 для визуализации закодированного href?

+0

IE не имеет никакого отношения к рендерингу. :) Проблема в том, что URL-адрес неверен - HTML кодируется вместо кодированного URL. – bzlm

+0

Сделать ответ вместо комментария, и я за исключением. – ctrlShiftBryan

+0

Нет необходимости - SLaks исправил его для ya. – bzlm

ответ

4

Вы используете неправильную кодировку.

Необходимо позвонить по телефону Html.AttributeEncode(Url.Encode(item.Category)).