我有一个奇怪的问题。我一直在编写一个代码来改变<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(); %>
这样的观点:
http://localhost:58296/Content/ViewContent/2
所选值为数字(即1,2,...)。
突然间,我可以将所选选项更改为从URL
http://localhost:58296/Content/ViewContent/3
到
{{1}}
..我真的不知道为什么会这样。有人可以向我解释一下吗?
答案 0 :(得分:2)
下拉列表的选定索引是列表中项目的从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的最后部分更改为该索引。”