我正在尝试实现与MVC3 + Razor类似的html:
<input id="x1" type="radio" value="true" name="UseExistingNumberX" checked="checked"/>
<input id="x2" type="radio" value="false" name="UseExistingNumberX" />
出于某种原因,我无法让它发挥作用。当我尝试跟随时:
@Html.RadioButtonFor(Function(m) m.UseExistingNumber, "true", New With {.id = "r1", .checked = "checked"}) Use Existing Service
@Html.RadioButtonFor(Function(m) m.UseExistingNumber, "false", New With {.id = "r2"}) Add New Service
我得到这个html输出:
<input type="radio" value="true" name="UseExistingNumber" id="r1" data-val-required="The UseExistingNumber field is required." data-val="true" checked="checked"> Use Existing Service
<input type="radio" value="false" name="UseExistingNumber" id="r2" checked="checked"> Add New Service
这是我的模特:
Public Class SelectiveServiceStep1Model
<Required(ErrorMessage:="Postcode is required.")> _
<RegularExpression("^\d*[0-9]$", ErrorMessage:="Your Postcode must contain only digits.")> _
Public Property Postcode As String
Public Property UseExistingNumber As Boolean
End Class
如果您发现生成的html存在2个问题:
注意:我知道我可以直接在Razor中编写html,而且我也知道我可以编写自己的扩展来呈现我想要的html。我只是不敢相信我已经不能使用内置的了,我肯定错过了一些正确的东西吗?
谢谢
答案 0 :(得分:0)
当我过去这样做时,我使用了HTML.RadioButton而不是RadioButtonFor。请注意,“field”是你所在的任何领域。我通常会把它放在编辑器模板中。