Есть несколько способов сделать это. В любом случае настоятельно рекомендуется иметь контейнер вокруг переключателей, но вы также можете поместить класс прямо на кнопки. С помощью этого HTML:
<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>
можно выбрать по классу:
$(".shapeButton").click(SetShape);
или выберите по ID контейнера:
$("#shapeList").click(SetShape);
В любом случае событие сработает при нажатии либо переключателя, либо метки для него, хотя, как ни странно, в последнем случае (выбор с помощью «#shapeList») нажатие на метку по какой-то причине вызовет функцию щелчка дважды, в минимум в FireFox; выбор по классу этого не сделает.
SetShape - это функция, которая выглядит так:
function SetShape() {
var Shape = $('.shapeButton:checked').val();
}
Таким образом, вы можете иметь ярлыки на своих кнопках и иметь несколько списков переключателей на одной странице, которые выполняют разные действия. Вы даже можете сделать так, чтобы каждая отдельная кнопка в одном списке выполняла разные действия, настроив разное поведение в SetShape () в зависимости от значения кнопки.