gridview内のradiobtnチェックにjavascriptコードを使用しました。コードはFirefoxブラウザで正常に動作します。しかし、Internet Explorer (IE) ではコードが機能せず、Javascript が実装されていないというエラーが表示されます。私のJavaScriptコードは
<script type="text/javascript">
function CheckOtherIsCheckedByGVID(rb) {
var isChecked = rb.checked;
var row = rb.parentNode.parentNode;
if (isChecked) {
row.style.backgroundColor = '#C4DFFB';
row.style.color = 'black';
}
var currentRdbID = rb.id;
parent = document.getElementById("<%= grdEventDetails.ClientID %>");
var items = parent.getElementsByTagName('input');
for (i = 0; i < items.length; i++) {
if (items[i].id != currentRdbID && items[i].type == "radio") {
if (items[i].checked) {
items[i].checked = false;
items[i].parentNode.parentNode.style.backgroundColor = 'white';
items[i].parentNode.parentNode.style.color = '#696969';
}
}
}
}
</script>
gridviewコードでの私の実装は
<asp:TemplateField>
<ItemStyle HorizontalAlign="Left" />
<ItemTemplate>
<asp:RadioButton ID="grdRdo" runat="server"
onclick="javascript:CheckOtherIsCheckedByGVID(this);" />
</ItemTemplate>
</asp:TemplateField>