我在 Web 用户控件中有一个 RadioButtonList 控件,它被加载到网页的占位符中。单选按钮列表项目将被动态加载,用户可以选择任何项目。
根据单选按钮的行为,我们要选择另一个项目来取消选择已选择的项目。但是,如果用户单击同一个项目本身(如果它已经被选中),我想取消选择一个项目。
我也必须使用 javascript 而不是服务器端代码来完成它。
我在 Web 用户控件中有一个 RadioButtonList 控件,它被加载到网页的占位符中。单选按钮列表项目将被动态加载,用户可以选择任何项目。
根据单选按钮的行为,我们要选择另一个项目来取消选择已选择的项目。但是,如果用户单击同一个项目本身(如果它已经被选中),我想取消选择一个项目。
我也必须使用 javascript 而不是服务器端代码来完成它。
<Head>
在标签中添加这个 javascript 函数。
<script type="text/javascript">
function clearRadioButtonList() {
var elementRef = document.getElementById('<%= yourRadioButtonListID.ClientID %>');
var inputElementArray = elementRef.getElementsByTagName('input');
for (var i = 0; i < inputElementArray.length; i++) {
var inputElement = inputElementArray[i];
inputElement.checked = false;
}
return false;
}
</script>
动态添加 listitem 时,给 listitem 添加 onclick 属性:
myListItem.Attributes.Add("onclick", "clearRadioButtonList");
不要忘记在 javascript 函数中替换“yourRadioButtonListID”。如果选中,这将取消选中单击的单选按钮。
谢谢。
使用 jquery 更容易
<script type="text/javascript">
$(document).ready(function () {
$('#btnTest').click(function () {
var radiolist = $('#RadioButtonList1').find('input:radio');
radiolist.removeAttr('checked');
});
});
</script>