Tôi có một nhiệm vụ có vẻ dễ dàng là thiết lập nút radio "được kiểm tra" dựa trên giá trị boolean của mô hình. Tôi có một boolean trong mô hình của tôi "IsSDPDonor" mà tôi muốn sử dụng nó cho Yes/No Radio nút. Nút radio "Có" phải được kiểm tra nếu nút "IsSDPDonor" là true và "No" khi nó sai. Tôi đã thử sử dụng mã bên dưới nhưng nó luôn kiểm tra nút radio "Không".Nút radio kiểm tra asp.net mvc3 dựa trên mẫu
@Html.Label("Would You Like to Donate Platelets (SDP)") :
@Html.RadioButtonFor(m => m.Donor.IsSDPDonor, true, new {@checked = Model.Donor.IsSDPDonor ? "checked" : ""}) Yes
@Html.RadioButtonFor(m => m.Donor.IsSDPDonor, false, new { @checked = !Model.Donor.IsSDPDonor ? "checked" : "" }) No
Tôi cảm thấy hơi thất vọng, vì vậy tôi nghĩ rằng tôi muốn nhận được sự trợ giúp. Về cơ bản, cú pháp HTML nói để chỉ đặt thuộc tính "Đã kiểm tra" mà không có bất kỳ giá trị nào để kiểm tra nút radio. Tôi đã tự hỏi làm thế nào tôi sẽ làm điều đó bằng cách sử dụng cú pháp dao cạo MVC3.
tại sao sử dụng '@ checked' thay vì' checked' trong định nghĩa đối tượng ẩn danh? Ngoài ra, sử dụng 'checked =" checked "' sẽ có tác dụng tương tự như kiểm tra không có giá trị, với ít vấn đề tương thích – smartcaveman
@smartcaveman vì 'checked' là từ khóa bạn phải sử dụng' @ 'để phân biệt nó như là một biến (tên thuộc tính, trong trường hợp này). – tvanfosson