webForumDet fria alternativet

Gridview - sidbyte med varning

.NET

3 svar · 562 visningar · startad av invecklaren

Medlem sedan jan. 2008280 inlägg
Frågan#1

Hej!

Jag har en gridview med paging. Man kan redigera gridviewen, men p g a av kravspecen ska ändringarna inte sparas direkt. Istället finns en "Spara Samtliga" -knapp längst ned på sidan. Den knappen sparar samtliga ändringar i gridviewen som finns på den pagade sidan. Om användarna gör ändringar i gridviewen och sedan, utan att spara, byter paging-sida, så måste en varning visas att ändringarna riskerar att gå förlorade. Typ:

"Du har ej sparade ändringar. Vill du verkligen fortsätta?"

Lämpligen visas detta som en javascript-dialog.
Jag har ett hiddenfield som lagrar om sidan har osparade ändringar.
Jag har inga problem med att skriva själva javascriptfunktionen

Nu till den verkliga frågan.
Hur kan jag sparka igång javascriptet när användaren klickar på "nästa sida"-länken i gridviewens paging?

Medlem sedan sep. 20011 914 inlägg
#2
        protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.Pager)
            {
                Table tbl = e.Row.Cells[0].Controls[0] as Table;

                foreach (TableCell td in tbl.Rows[0].Cells)
                {
                    foreach (Control c in td.Controls)
                    {
                        if (c is LinkButton)
                        {
                            LinkButton lbt = c as LinkButton;
                            lbt.Attributes.Add("onclick", "return confirm('WhatTheFuckAreYouDoing?');");
                        }
                    }
                }
            }
        }
Medlem sedan feb. 20013 023 inlägg
#3

Felpost

Medlem sedan jan. 2008280 inlägg
#4

Dino: Det verkar bra! Ska testa!

Edit: Funkar perfekt!

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