ASP.NET - MVC - HtmlHelper - RadioButton

HtmlHelper - RadioButton

Lớp HtmlHelper có hai phương thức mở rộng để tạo RadioButton(<input type="text'>) trong Razor là : RadioButton() và RadioButtonFor(). Phương thức Html.RadioButton() tạo phần tử <input type="text" /> với tên được chỉ định, giá trị và thuộc tính html.Html. RadioButtonFor tạo ra một phần tử input text với thuộc tính model xác định sử dụng một biểu thức lambda.

Ví dụ TextBox() và TextBoxFor():

public class Student
{
    public int StudentId { get; set; }
    [Display(Name="Name")]
    public string StudentName { get; set; }
    public int Age { get; set; }
    public string Gender { get; set; }
}

RadioButton()

Phương thức Html.RadioButton() tạo phần tử <input type = "Radio"> với các thuộc tính tên, isChecked và html.

Cú pháp phương thức RadioButton

MvcHtmlString RadioButton(string name, object value, bool isChecked, object htmlAttributes)

RadioButton có nhiều nhiều phương thức. Vui lòng truy cập MSDN để biết tất cả  RadioButton().

Male:   @Html.RadioButton("Gender","Male")  
Female: @Html.RadioButton("Gender","Female")  

Kết quả:

Male: <input checked="checked" 
        id="Gender" 
        name="Gender" 
        type="radio" 
        value="Male" />

Female: <input id="Gender" 
        name="Gender" 
        type="radio" 
        value="Female" />

Trong ví dụ trên, chúng tôi đã tạo hai nút radio cho thuộc tính "Giới tính". Tham số thứ hai là một giá trị sẽ được gửi đến máy chủ, nếu nút radio tương ứng được chọn. Nếu nút radio Nam được chọn, thì giá trị chuỗi "Male" sẽ được gán cho thuộc tính Gender và được gửi đến máy chủ. Ví dụ trên tạo ra hai nút radio như hình dưới đây.

Output in the browser


RadioButtonFor

RadioButtonFor tạo ra một phần tử <input type="radio"> với thuộc tính model xác định sử dụng một biểu thức lambda.

Cú pháp phương thức RadioButtonFor

MvcHtmlString RadioButtonFor(<Expression<Func<TModel,TValue>> expression, object value, object htmlAttributes)

RadioButtonFor có nhiều nhiều phương thức. Vui lòng truy cập MSDN để biết tất cả RadioButtonFor.

@model Student
@Html.RadioButtonFor(m => m.Gender,"Male")
@Html.RadioButtonFor(m => m.Gender,"Female")

Kết quả:

<input checked="checked" 
        id="Gender" 
        name="Gender" 
        type="radio" 
        value="Male" />

<input id="Gender" 
        name="Gender" 
        type="radio" 
        value="Female" />

Trong ví dụ trên, tham số đầu tiên trong phương thức RadioButtonFor () là biểu thức lambda chỉ định thuộc tính trong Model để  liên kết với phần tử RadioButton. Chúng ta  đã tạo hai nút radio cho thuộc tính Giới tính trong ví dụ trên. Vì vậy, nó tạo ra hai phần tử <input type = "RadioButton"> với id & name được đặt thành tên thuộc tính - Giới tính. Tham số thứ hai là một giá trị sẽ được gửi đến máy chủ khi form sẽ được gửi đi.