0

以下のように、データを gridview にバインドしています。ここでは、グループごとに一度に 1 つのラジオ ボタンを選択する必要があります。グリッドビューでこれを達成する方法

ここに画像の説明を入力

4

1 に答える 1

1

nameラジオボタンのプロパティを使用してみてください
または、ラジオボタンのGroupName="group"プロパティを設定できます

asp.net のグリッド ビューでラジオ ボタンを使用する方法を参照します。

その他のチュートリアル
http://www.c-sharpcorner.com/uploadfile/krishnasarala/select-single-radio-button-in-gridview-in-Asp-Net/

編集 1

上記のチュートリアルが示唆するように

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
        DataKeyNames="AuthId">
   <Columns>
     <asp:TemplateField ShowHeader="false">
        <ItemTemplate>
        <asp:RadioButton ID="rdbauthid" runat="server" 
             onclick="javascript:CheckOtherIsCheckedByGVID(this);" />
        </ItemTemplate>
     </asp:TemplateField>
     <asp:BoundField HeaderText="AUTHOR NAME" DataField="AuthName" />
     <asp:BoundField HeaderText="AUTHOR LOCATION" DataField="AuthLocation" />
   </Columns>
 </asp:GridView>

そして、以下のようにjava-script関数を作成します

<script type="text/javascript">
    function CheckOtherIsCheckedByGVID(spanChk) {
            var IsChecked = spanChk.checked;
            if (IsChecked) {
                spanChk.parentElement.parentElement.style.backgroundColor = '#228b22';
                spanChk.parentElement.parentElement.style.color = 'white';
            }
            var CurrentRdbID = spanChk.id;
            var Chk = spanChk;
            Parent = document.getElementById("<%=GridView1.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].parentElement.parentElement.style.backgroundColor = 'white'
                        items[i].parentElement.parentElement.style.color = 'black';
                    }
                }
            }
        }
</script>
于 2013-04-02T11:02:54.830 に答える