我有一个剃刀页面,我根据模型的值查看单选按钮。它总是给我选中按钮作为最后一个选项"在30"下。 为什么它总是给我最后一个单选按钮?
如果我使用console.log,它会输出正确的值,即"低于20"。什么是不正确的价值。
<div class="radio disabled">
<label><input type="radio" checked="@M.Type" value="under 10" disabled="disabled" name="Age" /> Age under 10</label>
<br>
<label><input type="radio" checked="@M.Type" value="under 20" disabled="disabled" name="Age" /> Age under 20</label>
<br>
<label><input type="radio" checked="@M.Type" value="under 30" disabled="disabled" name="Age" /> Age under 30</label>
</div>
<script>
console.log("@M.Type");
</script>
答案 0 :(得分:1)
所有输入都有checked属性,只应为其指定 所选项目,以便当它到达列表中的最后一项时,即检查的项目。如果您使用剃须刀,我会推荐帮助者:
@Html.RadioButtonFor(m => m.Type, "under 10")
@Html.RadioButtonFor(m => m.Type, "under 20")
@Html.RadioButtonFor(m => m.Type, "under 30")
否则,如果你坚持使用html,你可以使用
@if (Model.Type == "under 10")
<label><input type="radio" checked="checked" value="under 10" disabled="disabled" name="Age" /> Age under 10</label>
else
<label><input type="radio" value="under 10" disabled="disabled" name="Age" /> Age under 10</label>
实际上,switch语句更有意义。