2012-02-15 5 views
26
<%=Html.RadioButton("BookType", "1") %> C# 
<%=Html.RadioButton("BookType", "2") %> VB 

コード上記と同じIDと名前は私がHtml.RadioButtonは

のような出力をしたい名前が同じで異なるID

を必要とするコード

<input id="BookType" name="BookType" type="radio" value="1" >C# 
<input id="BookType" name="BookType" type="radio" value="2" >VB 

下に生成生成します*

<input id="rdoCSharp" name="BookType" type="radio" value="1" >C# 
<input id="rdoVb" name="BookType" type="radio" value="2" >VB 

*

+2

を。本当に - 私はまだこれを行う必要がありますか?後方互換性とは別の理由は何ですか?デフォルトでIDを出力しないのはなぜですか? –

答えて

33

あなたはoverload of the RadioButton methodを使用して適用したい属性渡すことで、デフォルト値を上書きすることができます

<%=Html.RadioButton("BookType", "1", new { id = "yourId" }) %> C# 
+10

これは初期のmvcからとても壊れており、mvcがバージョン5でラジオボタンを適切にレンダリングできないのは残念です。 –

+3

私はMVCに入っていて、このコンセプトを理解しようとしています。これらの単純なHTMLヘルパーを使うことの大きな利点は何ですか?単に 'と<%= Model.Whatever%>マイクロソフトがHTMLを生成することを信じて、恐ろしいアイデアのように聞こえる。彼らはHTML/CSSの時間をかけて失敗しました。 – xr280xr

+3

@ xr280xr:MVCはまた、すべての検証属性のようなものをHTMLにも注入します。あなたが想像するほど些細なものではありません。 –

5

用途:私はMVC1で、この年前

<%=Html.RadioButton("BookType", "1",new{@id="BookType1"}) %> C# 
<%=Html.RadioButton("BookType", "2",new{@id="BookType2"}) %> VB 
8
<%= Html.RadioButton("BookType", "1", new { id = "rdoCSharp" }) %> C# 
<%= Html.RadioButton("BookType", "2", new { id = "rdoVb" }) %> VB 
関連する問題