Проблема здесь в том, что рендеринг RadioButtonList оборачивает отдельные переключатели (ListItems) в теги span, и даже когда вы назначаете обработчик событий на стороне клиента непосредственно элементу списка, используя атрибуты, он назначает событие для span. Присвоение события RadioButtonList назначает его таблице, в которой оно отображается.
Хитрость в том, чтобы добавить ListItems на страницу aspx, а не из кода позади. Затем вы можете назначить функцию JavaScript свойству onClick. Это сообщение в блоге; присоединение обработчика событий на стороне клиента к списку переключателей от Juri Strumpflohner объясняет все это.
Это работает только в том случае, если вы заранее знаете ListItems и не помогает, когда элементы в RadioButtonList необходимо динамически добавлять с помощью кода, приведенного ниже.