Jag har en ImageButton vid namn btnDownload. Det finns ett kommando som heter RegisterClientScript som du kan använda: Ok! Har kommit fram till att det är när man streamar upp en fil som det inte går att kalla på script.Anropa ett javascript efter att funktion utförts
När jag klickar på den så kör jag följande attribut i Page_Load:
btnDownload.Attributes.Add("OnClick", "show('info');")
I suben btnDownload_Click streamar jag upp en viss fil till användaren för nedladdning.
Efter att detta är gjort vill jag köra ett annat javascript hide('info').
Men hur kallar man på ett javascript från btnDownload_Click suben?Sv: Anropa ett javascript efter att funktion utförts
Page.RegisterClientScript("valfritt_namn","<script>document.form1.btnDownload.Visibility=hidden;</script>"
Den skriver till webbläsaren valfritt material och enligt ovan Sv: Anropa ett javascript efter att funktion utförts
Jag hittade bara
If (Not IsClientScriptBlockRegistered("clientScript")) Then
RegisterClientScriptBlock("clientScript", "<script>hide('info');</script>")
End If
Men den kör aldrig javascriptet!
Koden ovan ligger alltså i btnDownload.click subrutinen.
Antar att man helt enkelt inte fattar hur .Net tänket fungerar.Sv: Anropa ett javascript efter att funktion utförts
Använder följande kod när jag streamar upp en fil för nedladdning:
Dim rStream As New FileStream(ZipPath & "?.zip", FileMode.Open, FileAccess.Read)
Dim bReader As New BinaryReader(rStream)
Response.ContentType = "application/zip"
Response.AddHeader("Content-Type", "application/olleorm")
Response.AddHeader("content-disposition", "attachment;filename=filnamn")
Response.BinaryWrite(bReader.ReadBytes(rStream.Length))
rStream.Close()
Finns det något bättre sätt att göra det på?