Почему этот код меняет местоположение так, как мне нужно - PullRequest
0 голосов
/ 14 августа 2010

У меня странный вопрос.Я писал код для изменения вида на <select> onchange, например:

<% Html.BeginForm(); %>
<label for="id" >Automat:</label>
<%= Html.DropDownList("id", Model as SelectList, new { @onchange = "window.location.href = document.getElementById('id').options[document.getElementById('id').selectedIndex].value;" })%>
<% Html.EndForm(); %>

Выбранное значение является числовым (т. Е. 1,2, ...).

Внезапно я могу изменить выбранную опцию, чтобы перейти с URL

http://localhost:58296/Content/ViewContent/2

на

http://localhost:58296/Content/ViewContent/3

.. И я действительно не знаю, почему это работает.Кто-нибудь может мне это объяснить, пожалуйста?

1 Ответ

2 голосов
/ 14 августа 2010

Выбранный индекс выпадающего списка - это индекс элементов в списке на основе 0.

<select>
  <option>Some Option 1</option> <!-- I have index 0 -->
  <option>Some Option 2</option> <!-- I have index 1 -->
  <option>Some Option 3</option> <!-- I have index 2 -->
</select>

Вы буквально говорите списку выбора: «Когда вы изменяете, захватите выбранный индекс значения и измените самую последнюю часть URL на этот индекс».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...