2011-11-27 21 views
247

Tôi chỉ tự hỏi cách sử dụng thuộc tính đầu vào HTML5 mới "bắt buộc" đúng cách trên radiobuttons. Mỗi trường vô tuyến có cần thuộc tính như dưới đây không? Hoặc là nó đủ nếu chỉ có một trường nhận được nó?HTML5: Cách sử dụng thuộc tính "bắt buộc" với trường nhập "radio"

<input type="radio" name="color" value="black" required="required" /> 
<input type="radio" name="color" value="white" required="required" /> 

Trả lời

418

Đặt thuộc tính required cho ít nhất một đầu vào của nhóm radio.


Thiết required cho tất cả nguyên liệu đầu vào là rõ ràng hơn, nhưng không cần thiết (trừ trường hợp tự động tạo ra đài phát thanh-nút).

Để nhóm các nút radio, tất cả chúng phải có cùng giá trị name. Điều này chỉ cho phép một người được chọn tại một thời điểm và áp dụng required cho toàn bộ nhóm.

<form> 
 
    Select Gender: 
 

 
    <label><input type="radio" name="gender" value="male" required>Male</label> 
 

 
    <label><input type="radio" name="gender" value="female">Female</label> 
 

 
    <input type="submit"> 
 
</form>

Cũng lưu ý:

Để tránh nhầm lẫn về việc liệu một nhóm nút radio được yêu cầu hay không, tác giả được khuyến khích để xác định các thuộc tính trên tất cả các đài phát thanh các nút trong một nhóm. Thật vậy, nói chung, các tác giả được khuyến khích tránh các nhóm nút radio không có bất kỳ điều khiển được kiểm tra ban đầu nào vì đây là trạng thái mà người dùng không thể quay lại và do đó thường được coi là giao diện người dùng kém.

Source

+43

Một điều rất quan trọng bạn cần phải nhớ là đầu vào đài phát thanh và hộp kiểm được nhóm lại theo các ** ** tên thuộc tính. Vì vậy, thiết lập yêu cầu trên bất kỳ một trong các yếu tố đầu vào (trong số một nhóm đầu vào có cùng tên) sẽ hoạt động. Mặt khác, nếu bạn bỏ lỡ thuộc tính ** name **, nó sẽ không hoạt động như bạn mong đợi. –

+3

@kumar_harsh Điểm rất tốt. Một trường hợp điển hình của một người nào đó bỏ qua tên là khi sử dụng Angular ng-model thay thế. –

+0

@kumar_harsh "Nhóm nút radio có chứa phần tử đầu vào cũng chứa tất cả các yếu tố đầu vào khác b đáp ứng tất cả các điều kiện sau" (4) http://www.w3.org/TR/html5/forms.html # radio-button-group –

10

thử này ...

<form> 
     <input type="radio" name="color" value="black" required /> 
     <input type="radio" name="color" value="white" /> 

     <input type="submit" value="Click Here" /> 
</form> 

Find JSFIDDLE

2

Nếu nút radio của bạn đã được tùy chỉnh, ví dụ như các biểu tượng ban đầu cho nút radio đã được ẩn qua css display:none để bạn có thể tạo nút radio của riêng mình thì có thể bạn sẽ gặp lỗi.

Cách để sửa chữa nó là để thay thế display:none với opacity:0

Các vấn đề liên quan