Вот довольно простой способ сделать это. Если вы хотите найти выбранный элемент списка, когда пользователь щелкает, добавьте атрибут onclick к каждому из элементов в RadioButtonList с помощью функции javascript, которая будет вызываться при щелчке элемента списка. Параметр this передаст элемент списка функции javascript:
<asp:RadioButtonList name="test" ID="RadioButtonList1" runat="server">
<asp:ListItem Text="List1" Value="1" onclick="myListItemClick(this);"></asp:ListItem>
<asp:ListItem Text="List2" Value="3" onclick="myListItemClick(this);"></asp:ListItem>
</asp:RadioButtonList>
Обратите внимание, что атрибут onclick не распознается ASP.NET intellisense для элементов управления ListItem, но он по-прежнему запускает функцию javascript на стороне клиента.
Теперь в вашей функции javascript:
function myListItemClick(e) {
alert('Selected value: ' + e.value);
}
Обязательно добавьте атрибут «Value» ко всем элементам списка, чтобы это работало правильно (как вы уже сделали).
Если вы не хотите делать это, когда пользователь щелкает, вы можете сделать это таким образом. В вашей разметке:
<script type="text/javascript" language="javascript">
var radioList = '<%= RadioButtonList1.ClientID %>';
</script>
Затем в вашем javascript:
function getSelectedListItem() {
var radioButtonList = document.getElementById(radioList);
var listItems = radioButtonlist.getElementsByTagName("input");
for (var i = 0; i < listItems.length; i++) {
if (listItems[i].checked) {
alert("Selected value: " + listItems[i].value);
}
}
}
person
lunarquaker
schedule
12.02.2014