私はこのグリッドを持っています。
<tr>
<td class="TDCaption" style="text-align:
<div class="DivStyleWithScroll" style="width: 100%; overflow: scroll; height: 250px;">
<asp:GridView ID="grdReport" runat="server" AutoGenerateColumns="False" DataKeyNames="BookingNumber"
ShowFooter="True" EmptyDataText="No record found" PageSize="50" CssClass="mGRid">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="chkAll" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="BookingDate" DataFormatString="{0:d}" HeaderText="Booking Date"
SortExpression="BookingDate" FooterText="Total" />
<asp:TemplateField HeaderText="Booking No.">
<ItemTemplate>
<asp:HyperLink ID="hypBtnShowDetails" runat="server" Text='<%# Bind("BookingNumber") %>' CssClass="grdCustName"
Target="_blank" NavigateUrl='<%# String.Format("~/Bookings/BookingSlip.aspx?BN={0}{1}{2}",Eval("BookingNumber"),-1,Eval("DeliveryDate")) %>'
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CustomerName" HeaderText="Customer Name" SortExpression="CustomerName">
</asp:BoundField>
</Columns>
</asp:GridView>
ご覧のとおり、最初の列はチェックボックスです。必要なのは、チェックボックスをクリックしたときに、そのチェックボックスに対応する予約番号(2番目の列)を変数に格納することです。たとえば、ユーザーが3番目のチェックボックスである予約番号にチェックマークを付けます。3行目は29です。選択してほしいです。また、もう1つ指摘しておきますが、このグリッドビューはすべて子ページにあり、次のようなコンテンツに含まれています。
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
これが物事に影響を与える可能性がある場合に備えて。私はこれを使用しています。
$(document).ready(function () {
$("body").delegate(":checkbox", "change", function () {
var list = $(':checkbox:checked').size();
alert(list); // tells correctly how many I have checked
var list2 = $.map(':checkbox:checked', function () {
return $(this).closest('div').find('.grdCustName').text();
}).toString();
alert(list2); // nothing happens
var list3 = $.map(':checkbox:checked', function () {
return $(this).text();
}).get(); // nothing here too
alert(list3);
var list4 = $.map(':checkbox:checked', function (index) {
return $(this).closest('div').find('.grdCustName').eq(index).text();
}).get(); // nothing here too
alert(list4);
});
});
私はインデックスを渡さずにこれらすべてを試しましたが、それでも何もしませんでした。私は自分自身を明確にしたいと思います。疑問がある場合はコメントしてください。明確にします。
だから、誰かが私がこれをするのを手伝ってくれますか?