У меня есть JavaScript для раскрывающегося списка для сортировки результатов на странице инвентаризации продукта. В Internet Explorer сортировка работает отлично, и браузер отлично справляется с этим. Однако в Chrome это терпит неудачу каждый раз (можете ли вы в это поверить, что-то работает в IE, но не в Chrome?)
В IE, когда я использую параметр Sort By, URL выглядит следующим образом:
MyExampleSite.com/Supplies/Products/12345/MyProduct/?a=0
Однако, когда я делаю параметр "Сортировать по" в Chrome, вот что выглядит URL:
MyExampleSite.com/Supplies/Products/12345/MyProduct/ &? Амп; а = 0
Как вы можете видеть, он добавляет усилитель в URL-адрес, и если я продолжаю пытаться сортировать его, просто добавляйте дополнительный усилитель каждый раз.
Вот JavaScript, который вызвал мои проблемы:
$("[name=a]").change(function () {
window.location = '@(this.Model.SortUri)' + '@(this.Model.SortUri.IndexOf('?') == -1 ? "?" : "&")a=' + this.value;
});
Моим решением было добавить Html.Raw
следующим образом:
$("[name=a]").change(function () {
window.location = '@(this.Model.SortUri)' + '@Html.Raw(this.Model.SortUri.IndexOf('?') == -1 ? "?" : "&")a=' + this.value;
});
И вдруг он отлично работает в IE и Chrome.
Мой вопрос: почему Chrome сделал это, но не IE?