我继承了一些代码,需要修复一些bug。其中一个是下拉列表,在选择的html列表上设置了“selected”属性。我可以从代码中看到这是在剃刀@Html.DropDownList:
中设置的@Html.DropDownList("makeId", vehicles.Makes, "Make..",
new { @class = "form-control footer-select", @id = "_man" })
在HTML中,这会呈现一个选择列表:
<select class="form-control footer-select" id="_man" name="makeId"><option value="">Make..</option>
<option selected="selected" value="Alfa Romeo">Alfa Romeo</option>
<option value="Audi">Audi</option>
<option value="BMW">BMW</option>
<option value="Citroen">Citroen</option>
<option value="DS">DS</option>
<option value="Fiat">Fiat</option>
<option value="Ford">Ford</option>
<option value="Honda">Honda</option>
<option value="Hyundai">Hyundai</option>
<option value="Infiniti">Infiniti</option>
<option value="Jaguar">Jaguar</option>
<option value="Jeep">Jeep</option>
<option value="Kia">Kia</option>
<option value="Lamborghini">Lamborghini</option>
<option value="Land Rover">Land Rover</option>
<option value="Lexus">Lexus</option>
<option value="Maserati">Maserati</option>
<option value="Mazda">Mazda</option>
<option value="Mercedes-Benz">Mercedes-Benz</option>
<option value="Mini">Mini</option>
<option value="Mitsubishi">Mitsubishi</option>
<option value="Nissan">Nissan</option>
<option value="Peugeot">Peugeot</option>
<option value="Porsche">Porsche</option>
<option value="Renault">Renault</option>
<option value="Seat">Seat</option>
<option value="Skoda">Skoda</option>
<option value="Ssangyong">Ssangyong</option>
<option value="Tesla">Tesla</option>
<option value="Toyota">Toyota</option>
<option value="Vauxhall">Vauxhall</option>
<option value="Volkswagen">Volkswagen</option>
<option value="Volvo">Volvo</option>
</select>
我正在尝试重置所选的值,并确保在调用@html.dropdownlist之前没有选择任何内容:
vehicles.Makes.ForEach(i => i.Selected = false);
然而,页面仍然呈现所选属性设置为true! 什么是最好的方法,我可以诊断什么是设置这个值,因为它让我发疯!
我无法在客户端JS的任何地方看到这是设置的,并且无法看到在服务器端设置的位置和方式 谢谢