2009-10-18 40 views
7

tôi có đối tượng được nhập mạnh thể hiện tất cả thuộc tính hộp văn bản của biểu mẫu và hoạt động tốt khi tôi đăng lên bộ điều khiển.cách nút radio hoạt động với liên kết asp.net mvc

giờ tôi cần thêm nút radio vào biểu mẫu này. làm thế nào mà bản đồ để các đối tượng mạnh mẽ đánh máy?

Trả lời

10

Nếu bạn sử dụng HtmlHelper.RadioButton, bạn sẽ được miễn là tên khớp với tên thuộc tính của bạn.

Dưới đây là một đoạn mã từ một trong những dự án của tôi:

<span><%= Html.RadioButton("DateFormat", "MMMM/dd/yy", Model.DateFormat.Equals("MMMM/dd/yy"), new Dictionary<string, object> { { "class", "normalwidth" } })%><label class="displayinline"><%=DateTime.Now.ToString("MMMM dd, yyyy")%></label></span> 
<span><%= Html.RadioButton("DateFormat", "yyyy/MM/dd", Model.DateFormat.Equals("yyyy/MM/dd"), new Dictionary<string, object> { { "class", "normalwidth" } })%><label class="displayinline"><%=DateTime.Now.ToString("yyyy/MM/dd")%></label></span> 
<span><%= Html.RadioButton("DateFormat", "dd/MM/yyyy", Model.DateFormat.Equals("dd/MM/yyyy"), new Dictionary<string, object> { { "class", "normalwidth" } })%><label class="displayinline"><%=DateTime.Now.ToString("dd/MM/yyyy")%></label></span> 
<span><%= Html.RadioButton("DateFormat", "", new Dictionary<string, object> { { "class", "normalwidth" } })%><label class="displayinline">custom <%= Html.TextBox("customdate", "", new Dictionary<string, object> { { "style", "width:50px; font-size:12px; display:inline;" } }) %> </label></span> 

Và đây là HTML rendered. Lưu ý mỗi đầu vào có cùng tên, nhưng các giá trị khác nhau. Chỉ nút được chọn mới có giá trị được đăng lại máy chủ.

<p><label>Date Format</label> 
     <span><input class="normalwidth" id="DateFormat" name="DateFormat" type="radio" value="MMMM/dd/yy" /><label class="displayinline">October 18, 2009</label></span> 
     <span><input checked="checked" class="normalwidth" id="DateFormat" name="DateFormat" type="radio" value="yyyy/MM/dd" /><label class="displayinline">2009/10/18</label></span> 
     <span><input class="normalwidth" id="DateFormat" name="DateFormat" type="radio" value="dd/MM/yyyy" /><label class="displayinline">18/10/2009</label></span> 
     <span><input class="normalwidth" id="DateFormat" name="DateFormat" type="radio" value="" /><label class="displayinline">custom <input id="customdate" name="customdate" style="width:50px; font-size:12px; display:inline;" type="text" value="" /> </label></span> 
    </p> 

Và trong lớp học của bạn:

public class Post 
{ 
    public string DateFormat {get; set:} 
} 
1
@Html.RadioButtonFor(m => m.DateFormat, "MMMM/dd/yy") 
@Html.RadioButtonFor(m => m.DateFormat, "yyyy/MM/dd") 
Các vấn đề liên quan