2009-10-07 5 views
6

Làm cách nào để chọn nút radio khi tôi nhấp vào bất kỳ nhãn nào ở phía trước nút radio đó?nút radio chọn trên nhãn nhấp vào

Tôi đã sau mã cho nút radio:

<div class="label_main" style="width:350px"> 
    <div class="label_radio"> 
     <input type="radio" name="group1" id="group1" value="0" 
     <?php if($r0==0) { ?> 
     checked="checked" 
     <?php } ?> 
     /> 
    </div> 
    <div class="label_top"> 
     <label for="group1">First Option </label> 
    </div> 
    <div class="label_desc"> 
     <label for="group1">This is first option </label> 
    </div> 
    </div> 
     </div> 

    <div class="label_main" style="width:350px"> 
    <div class="label_radio"> 
     <input type="radio" name="group1" id="group1" value="1" 
     <?php if($r0==1) { ?> 
     checked="checked" 
     <?php } ?> 
     /> 
    </div> 
    <div class="label_top"> 
     <label for="group1">Second Option </label> 
    </div> 
    <div class="label_desc"> 
     <label for="group1">This is Second Option </label> 
    </div> 
    </div>   

Chỉ có vấn đề tôi đang gặp khó nếu tôi thay đổi ID đài phát thanh cho nó hoạt động tốt, nhưng tôi cần cùng id vì tôi cần giá trị của nó vào cuối để lưu trong cơ sở dữ liệu .

+1

Các nút radio phải có cùng 'tên', nhưng không thể có cùng một' id'. HTML yêu cầu 'id' là duy nhất. – Powerlord

Trả lời

15

Bạn đang nhầm lẫn thuộc tính name với thuộc tính id.

Mỗi người nên có cùng tên, nhưng một id khác.

Ví dụ:

<input type="radio" name="group1" id="group1_0" value="0"> 
<input type="radio" name="group1" id="group1_1" value="1"> 

<label for="group1_0">CLicky 0</label> 
<label for="group1_1">CLicky 1</label> 
1

ID và tên của các đầu vào không phải là giống nhau. Để lại tên và thay đổi ID của radio thứ hai thành một cái gì đó khác (và thay đổi thuộc tính "for" của nhãn thứ hai thành ID đó). Khi bạn sẽ gửi biểu mẫu tới máy chủ, bạn sẽ nhận được giá trị theo thuộc tính "tên". Máy chủ không biết gì về ID.

+1

Tôi không gửi biểu mẫu qua Jquery và tôi đang sử dụng thẻ id để nhận các giá trị ... – air

+0

jQuery (hoặc JavaScript nói chung) không có liên quan gì đến điều này. id không phải là thẻ, đó là một thuộc tính. Và không, một khi bạn gửi đến máy chủ bạn truy cập các giá trị của các trường thông qua tên của họ không phải là id. Bởi vì, như tôi đã nói, máy chủ không biết gì về ID. –