[ bjevta @ 31.07.2006. 11:17 ] @
| treba da u ispalim script posle postback event-a i, u zavisnosti od toga šta se dogodilo, ispišem alert.
probao sam sa Page.Register... kao i OnClientClick ali:
1. onclientclick se ispaljuje pre server side koda, to mi ne odgovara
2. Register... je ok, ali se ispaljuje uvek: F5 i CtrlF5 ga takođe ispaljuju, jer se to tretira kao postback. Dakle, posle ispaljivanja treba da "ubijem" script? Koji event posle prikazivanja alert-a da hvatam pa da ga "ubijem"?
Kad, kako, šta... Pomagajte!
|
[ Fedya @ 31.07.2006. 14:27 ] @
Jedno resenje je da postavis Literal (asp:Literal) kontrolu na html i da joj na serveru od zavisnosti od uslova dodeljujes text koji ce se izvrsavati kao skript.
[ VerbatimBOT @ 03.08.2006. 08:50 ] @
A jel si probao u kodu putem IF selekcije da definišeš koji će se alert ispaliti:
Code:
if (uslov)
ClientScript.RegisterStartupScript(this.GetType(), "poruka1", "alert('Tekst1')", true);
else
ClientScript.RegisterStartupScript(this.GetType(), "poruka2, "alert('Tekst2')", true);
[ jablan @ 03.08.2006. 09:16 ] @
Citat:
bjevta: 2. Register... je ok, ali se ispaljuje uvek: F5 i CtrlF5 ga takođe ispaljuju, jer se to tretira kao postback.
Odakle to da se F5 tretira kao postback? Koristi proveru IsPostBack i registruj alert samo ako je true.
[ bjevta @ 05.08.2006. 20:55 ] @
Hvala svima na odgovorima.
Do sada sam koristio labelu koja je bila not visible, pa ako treba nešto da ispišem posle postback-a, ja je proglasim za visible. Nisam se puno upuštao u JavaScript. Sad imam malo vremena da sredim sitnice, pa sam hteo da i to uradim.
F5 nije postback. Izvinite što sam u brzini bio neprecizan.
Ovako:
- napravite blanko web formu i dodajte na nju neki command button (push ili link, na primer)
- u postback event (onclick) napišite:
if (!ClientScript.IsStartupScriptRegistered("MailSentInfo"))
ClientScript.RegisterStartupScript(this.GetType(), "MailSentInfo", "alert('E-mail je poslat.');", true);
- pritisnite dugme. Alert message će se pojaviti.
- pritisnite F5 ili Ctrl-F5. Alert message će se opet pojaviti. To je "F5 postback" koji sam prethodno spomenuo.
- ako na formu dodate još jedno dugme i naizmenično ih pritiskate, neće se svaki put okinuti alert, što je ok. dakle, samo ako posle okidanja alert-a pritisnete F5, alert se ponovo prikaže.
U suštini, ovo je sitnica. Dobro je i ovako, ali sam detaljista pa me interesuje "šta ovo bi".
[Ovu poruku je menjao bjevta dana 06.08.2006. u 08:36 GMT+1]
[Ovu poruku je menjao bjevta dana 06.08.2006. u 08:39 GMT+1]
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.