Có nhiều hướng khác nhau để làm điều đó. Bất kể bạn nên có một vùng chứa xung quanh các nút radio, nhưng bạn cũng có thể đặt một lớp trực tiếp trên các nút. Với HTML này:
<ul id="shapeList" class="radioList">
<li><label>Shape:</label></li>
<li><input id="shapeList_0" class="shapeButton" type="radio" value="Circular" name="shapeList" /><label for="shapeList_0">Circular</label></li>
<li><input id="shapeList_1" class="shapeButton" type="radio" value="Rectangular" name="shapeList" /><label for="shapeList_1">Rectangular</label></li>
</ul>
bạn có thể chọn theo lớp:
$(".shapeButton").click(SetShape);
hoặc chọn theo ID vùng chứa:
$("#shapeList").click(SetShape);
Trong cả hai trường hợp, sự kiện sẽ kích hoạt khi nhấp vào nút radio hoặc nhãn cho nó, mặc dù kỳ lạ trong trường hợp sau (Chọn theo "#shapeList"), nhấp vào nhãn sẽ kích hoạt chức năng nhấp hai lần vì một số lý do, tại ít nhất trong FireFox; chọn theo lớp sẽ không làm điều đó.
SetShape là một hàm và có dạng như sau:
function SetShape() {
var Shape = $('.shapeButton:checked').val();
//dostuff
}
Bằng cách này, bạn có thể có nhãn trên các nút của mình và có thể có nhiều danh sách nút radio trên cùng một trang thực hiện những việc khác nhau. Bạn thậm chí có thể để từng nút riêng lẻ trong cùng một danh sách làm những việc khác nhau bằng cách thiết lập hành vi khác nhau trong SetShape () dựa trên giá trị của nút.