Avatar billede mcnovy Nybegynder
08. april 2008 - 22:18 Der er 31 kommentarer og
1 løsning

postbackurl og querystring, hvordan

Hej..

har et lille problem der driller..

jeg har en imagebutton, og den skal sende een videre til en anden side, men den skal inkludere en querystring som der er på dens egen side..

jeg har prøvet følgende
<asp:ImageButton ID="ImageButton1" runat="server" AlternateText="Go To TestPage" PostBackUrl="testpage.aspx?id=<%= Request.QueryString["id"]%>" />

men den siger jeg ikke må bruge <% ... %>

nogen der kender den rigtige måde at gøre dette på..??

på forhånd tak..
Avatar billede 2c Nybegynder
08. april 2008 - 22:56 #1
Hvad med:
id=<%# Request.QueryString["id"].ToString%>"
istedet?
Avatar billede 2c Nybegynder
08. april 2008 - 22:57 #2
Altså = udskiftet med #
og så lige en ToString() på.
Avatar billede kalp Novice
08. april 2008 - 23:03 #3
går i design mode.. dobbeltklik på din imagebutton så den opretter et click event i din codebehind og lav så  et redirect derfra istedet.. glemt dit PostBackUrl halløj.

dvs.

<asp:ImageButton ID="ImageButton1" runat="server" OnClick="ImageButton1_Click" />

men som sagt.. dobbeltklik på den, så opretter den et event i din code behind.
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:06 #4
så siger den at serverkoden er forkert udformet
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:09 #5
Kalp
altså en Response.Redirect("test.aspx");

den er firefox ikke glad for..
det er ikke hver gang man trykker at den reagere på det..
Avatar billede kalp Novice
08. april 2008 - 23:11 #6
så laver du noget forkert.

Response.Redirect bliver kørt på serveren og bliver ikke tolket af din browser.

men ja.. jeg tænker på en Response.Redirect.
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:12 #7
der er jo ikke så meget at lave forkert.. :)
så skulle det da være det at den ligger i et LoginView..?

men prøver lige at smide det ind på mit webhotel..
kan være det er min server der driller..
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:13 #8
<asp:LoginView ID="LoginView2" runat="server">
        <RoleGroups>
            <asp:RoleGroup Roles="Admin,Metro Bruger,Bruger">
                <ContentTemplate>
                    <asp:ImageButton ID="ImageButton1" runat="server" AlternateText="New Topic" OnClick="ImageButton1_Click" />

                </ContentTemplate>
            </asp:RoleGroup>
        </RoleGroups>
    </asp:LoginView>

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
    {
        Response.Redirect("~/Forum/new_Topic.aspx?TopicID=" + Request["TopicID"]);
    }
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:14 #9
sådan der virker det ihvertfald ikke..
men smider det lige på webhotel
Avatar billede kalp Novice
08. april 2008 - 23:15 #10
det er også sådan jeg tænkte det skulle laves
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:16 #11
det virker heller ikke på webhotel.. :|
Avatar billede kalp Novice
08. april 2008 - 23:16 #12
jeg har ikke prøvet med LoginView, men så længe din knap event bliver kørt så skal det virke
Avatar billede kalp Novice
08. april 2008 - 23:17 #13
hvad sker der når du trykker på knappen ?
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:17 #14
men det virker i IE, men ikke i FF..
giver ikke så meget mening..
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:19 #15
hvis jeg debugger med IE, så kører den koden som den skal..
men ved ikke hvordan (hvis muligt) man debugger med FF
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:20 #16
når jeg trykker på knappen i FF,
så virker det som om at den laver et postback,
men den ender på samme side som den kom fra.
Avatar billede kalp Novice
08. april 2008 - 23:31 #17
du kan sagtens debugge med firefox.. hvis du bare har startet den op i IE så kan du også åbne et vindue i Firefox og så vil den fanges af debuggeren.

hvis den laver et postback er det meget relevant at se hvad der sker i koden:)
Avatar billede kalp Novice
08. april 2008 - 23:32 #18
måske redirekter den til sig selv ved en fejl og så ligner det et postback
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:38 #19
ja... synes ellers jeg havde prøvet det med firefox og debug..
men det er da rigtig nok.. det virker jo fint.. :)

men har fundet "fejlen"

som du kan se i koden havde jeg ikke lavet noget imageurl,
da jeg gerne ville vente med at tegne til jeg var færdig med koden..

men firefox vil ikke starte mit click event medmindre den har et billede..
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:39 #20
kender du evt en løsning på det..
for det er godt nok belastende..
Avatar billede kalp Novice
08. april 2008 - 23:41 #21
<asp:ImageButton ID="ImageButton1" onmouseup="this.click()" runat="server" AlternateText="New Topic" OnClick="ImageButton1_Click" />

prøv sådan:D
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:45 #22
var det et svar til 08/04-2008 23:39:43

i så fald virkede det ikke. :)
Avatar billede kalp Novice
08. april 2008 - 23:50 #23
du mener
08/04-2008 23:41:50

men det virker som om der er en fejl i noget kode som vs selv generere..

prøv at skrive dette i din page load.


if(!IsPostBack)
ImageButton1.Click +=new ImageClickEventHandler(ImageButton1_Click);
Avatar billede mcnovy Nybegynder
08. april 2008 - 23:55 #24
der oprettet den dit event hver gang jeg trykker på knappen,
så det er åbenbart ikke et postback..
Avatar billede kalp Novice
08. april 2008 - 23:59 #25
du sagde problemet var imageurl.. kan du ikke give den en tom imageurl til at starte med? også selv om VS vil brokke sig over det?
Avatar billede mcnovy Nybegynder
09. april 2008 - 00:09 #26
nej.. det vil den heller ikke leve med..

det bekymre mig lidt,
hvis nu at billedet skulle forsvinde ved en fejl,
eller der var en anden fejl på serveren som gjorde at den ikke lige ville vise billedet, så virker knappen ikke hvis man bruger ff...
lidt underligt..
Avatar billede kalp Novice
09. april 2008 - 00:16 #27
giv den et imageurl.. det er jo fint den har et predefineret et.
at du ændre det bagefter betyder ikke noget, men hvis det bare er det som skal til så gør det.

jeg kan se i min egen kode, at jeg selv har et standard imageurl og ellers fungere min kode fint i alle browsere.. og det er med redirekt som du prøver på nu
Avatar billede mcnovy Nybegynder
09. april 2008 - 00:19 #28
det er jo også fint nok..

men som sagt, så bekymre det mig lidt at der ved en fejl med billederne kan ske at man ikke kan benytte sitet ordenligt..
Avatar billede kalp Novice
09. april 2008 - 00:21 #29
jeg ved ikke hvad du mener med fejl?
du må forklare den: )
jeg har løsningen kørende professionelt hos en kendt kunde uden problemer
Avatar billede mcnovy Nybegynder
09. april 2008 - 00:26 #30
jeg tænker på en fejl hvor at browseren får en timeout på at hente billedet (Server overbelastet måske)
og at den så ikke henter billedet..

jeg tror gerne på at løsningen virker..
men er bare lidt nysgerrig..
Avatar billede kalp Novice
09. april 2008 - 00:29 #31
sådan skal du slet ikke tænke på det.
for det problem vil alle hjemmesider have så.
at du angiver et billede fra serveren betyder jo ikke at klienten henter det imens den er på serveren.
billederne bliver først downloaded når klienten har fået svaret tilbage.

du husker måske de gode gamle dage med 56k modem hvor du sad og ventede på at billederne blev loaded - altid til sidst.

det her er præcis det samme, så dine billeder skal nok komme hvis bare de eksistere!
Avatar billede mcnovy Nybegynder
09. april 2008 - 00:34 #32
jeg har oplevet på nogle asp.net sider at deres servere er overbelastede, og der får browseren ikke fat i mange af billederne og Stylesheet mm.
så ved at det kan ske..

men lad det nu ligge :)
jeg prøver, ellers må jeg lave noget
hvis billede ikke eksistere, så indsæt en alm submit knap istedet..
så burde man være på den sikre side. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester