webForumDet fria alternativet

Får inte fram resultatet av vilka ckeckboxar som är markerade från gridview

.NET

1 svar · 346 visningar · startad av haxx

Medlem sedan maj 200654 inlägg
Frågan#1

Hej,

Jag håller på med ett test där jag försöker få fram vilka checkboxar som är markerade, men det händer inget och jag vet inte varför. Först så hade jag problem med att när jag varje gång klickade på knappen så fick jag fram felmedelandet: Invalid postback or callback argument, så jag skrev <pages enableEventValidation="false"> i web.config-filen. Då fick jag inget felmedelande men jag från ju inte fram något resultat över vilka checkboxar som är markerade... om det kan vara bra att veta.

Kan någon lista ut felet? Tack på förhand.

protected void DeleteButton_Click(object sender, ImageClickEventArgs e)
    {
        string Status = "GridView Items Checked:<br />";
        foreach (GridViewRow gvr in Grid.Rows)
        {
            CheckBox chk = (CheckBox)gvr.FindControl("chkSelect");
            if (chk.Checked)
            {
                Status += chk.Text + "<br />";
            }
        }
        Status += "End";
        statusLabel.Text = Status;
    }
<asp:GridView ShowFooter="True" ID="Grid" AutoGenerateColumns="False"
    datakeynames="ListID,Namn,Skapad,Motagare" runat="server" OnRowEditing="Grid_RowEditing">
    <Columns>
        <asp:BoundField DataField="Namn" HeaderText="Name:" >
        </asp:BoundField>
        <asp:BoundField DataField="ListID"  HeaderText="List-ID:" >
        </asp:BoundField>
        <asp:BoundField DataField="Skapad" HeaderText="Created:" >
        </asp:BoundField>
        <asp:BoundField DataField="Motagare" HeaderText="Receivers:" >
        </asp:BoundField>
        <asp:TemplateField HeaderText="Delete:">
            <ItemTemplate>
                <asp:CheckBox ID="chkSelect" runat="server" Text='<%# Eval("ListID") %>' />
            </ItemTemplate>
            <HeaderTemplate>
                <p>Delete:</p>
                <asp:CheckBox id="chkAll" onclick="javascript:SelectAllCheckboxes(this);" runat="server" />
            </HeaderTemplate>
            <FooterTemplate>
                <asp:ImageButton runat="server" id="DeleteButton"
                ImageUrl="~/WebsiteFolders/WebsiteImages/Tabort.jpg" 
                ToolTip="Delete list" AlternateText="Delete list"
                onclick="DeleteButton_Click" />
            </FooterTemplate>
        </asp:TemplateField>
        <asp:ButtonField ButtonType="Image" 
            ImageUrl="~/WebsiteFolders/WebsiteImages/Redigera.jpg" CommandName="Edit" 
            HeaderText="Edit:" ShowHeader="True" Text="Edit list" >
        </asp:ButtonField>
    </Columns>
</asp:GridView>
<asp:Label ID="statusLabel" runat="server" ForeColor="Red"></asp:Label>
Medlem sedan maj 200654 inlägg
#2

oj, kollade på tråden under och såg problemet, lite klantigt.
Detta berodde på att varje gång när jag laddar sidan sker postback och då automatiskt binder om datagriden.

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)