C# 带RadioButton的Id

C# 带RadioButton的Id,c#,asp.net-mvc,razor,asp.net-mvc-5,mvc-editor-templates,C#,Asp.net Mvc,Razor,Asp.net Mvc 5,Mvc Editor Templates,我试图在asp MVC 5中处理单选按钮ID 我是这样工作的 示例模型 class A { public bool? radio { get; set; } } 在剃刀的视野中 @Html.RadioButtonFor(x => x.NeutroBT, Model.NeutroBT, new { @id = "True"}) @Html.RadioButtonFor(x => x.NeutroBT, !Model.NeutroBT, new { @id = "False})

我试图在asp MVC 5中处理单选按钮ID

我是这样工作的

示例模型

class A
{
   public bool? radio { get; set; }
}
在剃刀的视野中

@Html.RadioButtonFor(x => x.NeutroBT, Model.NeutroBT, new { @id = "True"})
@Html.RadioButtonFor(x => x.NeutroBT, !Model.NeutroBT, new { @id = "False})
它不会引起问题,但我正在一个editortemplate中工作,我希望它已经生成了
id
,以某种方式从其他视图访问
@Html.IdFor(x=>x.NeutroBT,true)
@Html.IdFor(x=>x.NeutroBT,false)
,只是防止将来的更改

有可能这样吗?我花了很多时间搜索,但没有得到任何类似的结果

如果不可能,最好的处理方法是什么


谢谢

不需要使用
id
属性。相反,您可以通过javascript使用
name
属性来选择或设置值(在任何情况下,
@Html.IdFor()将只返回
nortubt
,而不是您在
radiobutton()`方法中覆盖的
id
,因此无法在您的案例中使用)

此外,
radiobutton()
的第二个参数应该是
true
false
(而不是
Model.NeutroBT
!Model.NeutroBT

例如,要将标签与按钮关联,可以将其包装在

<label>
    @Html.RadioButtonFor(x => x.NeutroBT, true, new { id = ""})
    <span>Yes</span>
</label>
<label>
    @Html.RadioButtonFor(x => x.NeutroBT, false, new { id = ""})
    <span>No</span>
</label>

不需要使用
id
属性。相反,您可以通过javascript使用
name
属性来选择或设置值(在任何情况下,
@Html.IdFor()将只返回
nortubt
,而不是您在
radiobutton()`方法中覆盖的
id
,因此无法在您的案例中使用)

此外,
radiobutton()
的第二个参数应该是
true
false
(而不是
Model.NeutroBT
!Model.NeutroBT

例如,要将标签与按钮关联,可以将其包装在

<label>
    @Html.RadioButtonFor(x => x.NeutroBT, true, new { id = ""})
    <span>Yes</span>
</label>
<label>
    @Html.RadioButtonFor(x => x.NeutroBT, false, new { id = ""})
    <span>No</span>
</label>

为什么要有
id
?(作为旁注,它的
@Html.radiobutton(x=>x.NeutroBT,true,new{…})
(而不是
(bool)Model.NeutroBT
)@StephenMuecke你好,谢谢你的回复,我对代码做了一些修改,我把模型作为第二个参数传递给你,以得到true或false,我想要一个id从javascript访问它,你推荐我什么?按名称访问它们?不。你使用
true
false
作为第二个参数。你为什么需要通过javascript访问它id?-你可以通过
name
访问它,我真的不这么想,我会用name访问它们,关于它的一个小问题,如果我不重写id并且两者都使用相同的id,它会导致问题?你使用
new{id=”“}
这样属性就被删除了为什么要有
id
?(作为旁注,它的
@Html.radiobutton(x=>x.NeutroBT,true,new{…})
(而不是
(bool)Model.NeutroBT
)@StephenMuecke你好,谢谢你的回复,我对代码做了一些修改,我把模型作为第二个参数传递给你,以得到true或false,我想要一个id从javascript访问它,你推荐我什么?按名称访问它们?不。你使用
true
false
作为第二个参数。你为什么需要通过javascript访问它id?-你可以通过
name
访问它,我真的不这么想,我会用name访问它们,关于它的一个小问题,如果我不重写id并且两者都使用相同的id,它会导致问题?你使用
new{id=”“}
这样属性就被删除了