Avatar billede lau_r Nybegynder
12. december 2001 - 11:54 Der er 21 kommentarer og
1 løsning

Kommunikation ml. flash og asp.net

Hvordan kalder jeg min asp.net kode fra flash og omvendt. F.eks. ved brug af flashknapper på en asp.net side. Har forsøgt lidt med Xml, men er det overhovedet smart at bruge i denne sammenhæng?
Avatar billede mgade Nybegynder
12. december 2001 - 11:58 #1
Det er vel ikke anderledes end med ASP? Enhver URL der leveret et output der er formatteret så Flash kan fatte det kan kaldes med loadvariablesNUM() - går jeg ud fra.
Avatar billede nikolajdu Nybegynder
12. december 2001 - 12:01 #2
Lau_r - Taler vi knapper lavet i selve Flash programmet eller taler vi f.eks Dreamweaver Standard Flash knapper??

De sidste har du ikke den store mulighed for at ændre i.
Avatar billede lau_r Nybegynder
12. december 2001 - 12:04 #3
Vi snakker om knapper lavet i Flash.
Vores problem er at knytte asp funktionalitet til flash knapper.
Hvordan kan asp.net registrere at der er blevet trykket på en flash-knap?
Avatar billede mgade Nybegynder
12. december 2001 - 12:06 #4
Ehh. ved at du lader en onrelease - action kande en asp.net-url (vha loadvar.. etc)?
Avatar billede mgade Nybegynder
12. december 2001 - 12:09 #5
\"kande\"!

KALDE - for s*tan da ;-)
Avatar billede nikolajdu Nybegynder
12. december 2001 - 12:10 #6
on (release) {
    loadVariablesNum (\"minASP.asp\", 0, \"POST\");
}

Eller:

on (release) {
    loadVariablesNum (\"minASP.asp?JegHarKlikket=true\", 0, \"GET\");
}

Så kan du i begge tilfælde hente dine variabler ud i ASP siden.

Når du skal den anden vej ind i Flash, så udskriver du dine variabler på siden med Response.Write Server.URLEncode(mineVariabler)

/nikolaj
Avatar billede lau_r Nybegynder
12. december 2001 - 12:11 #7
Vi vil ikke bare transportere systemet videre til en anden side, men kalde metoder i vores asp.net kode.
asp.net\'s imagebuttons kan kalde metoder, men hvordan gør man tilsvarende med en flash-knap?
Avatar billede mgade Nybegynder
12. december 2001 - 12:13 #8
apropos nikolajdu: den asp-fil du kalder skal så bare kalde den metode du ønsker
Avatar billede nikolajdu Nybegynder
12. december 2001 - 12:13 #9
Ligger flashen integreret i den ASP side eller er det en ekstern??
Avatar billede lau_r Nybegynder
12. december 2001 - 12:14 #10
integreret
Avatar billede nikolajdu Nybegynder
12. december 2001 - 12:18 #11
Se nu bliver jeg meget i tvivl.

Udover jeg ikke er specielt funderet i ASP.net, så aner jeg ikke hvordan man skulle kunne kalde en ASP funktion. ASP´en er vel kørt på serveren når siden er udskrevet.

Var det javaScript kunne man gøre sådan her:

on (release) {
    getURL (\"java script:minFunktion()\");
}


/Nikolaj
Avatar billede kichian Nybegynder
12. december 2001 - 13:01 #12
Om du vil videre til en anden side eller kalde samme side er et fedt.

Kig i den HTML-kode som ASP.NET genererer, så kan du se hvilke parametre der skal med når du kalder den side som skal behandle klikket( jo, det er et nyt kald).

Der er intet hokus-pokus mht. ASP.NET formularer. Det er præcis ligesom i gamle dage, bortset fra at ASP-NET hjælper til at opdele koden.
Avatar billede odegaard Nybegynder
12. december 2001 - 13:03 #13
Øh... du vil altså kalde en ASP.NET funktion, uden at siden bliver loadet igen?
Det kan du ikke. Du er nødt til at kalde siden igen. Denne gang med en parameter som fortæller ASP.NET koden at den skal kalde en bestemt Sub/funktion.

Som jeg forstår det, så blander du client-side og server-side funktioner sammen. ASP.NET er server-side, og dvs. du skal kalde en side (serveren) for at få udført et script.

/Odegaard
Avatar billede nikolajdu Nybegynder
12. december 2001 - 13:05 #14
odegaard - Se det var lige præcis hvad jeg havde forventet.

Så bliver det en hel del nemmere at hente variabler/kalde funktioner i en ektern side.
Avatar billede lau_r Nybegynder
12. december 2001 - 13:15 #15
Jeg vil kalde en ASP.NET funktion og så loade siden igen!

Men hvordan kalder jeg siden igen med et parameter der fortæller ASP.NET koden at den skal kalde en funktion?
Avatar billede odegaard Nybegynder
12. december 2001 - 13:29 #16
Du kalder siden med følgende link:
        /minside.aspx?Call=DoThis
og indsætter følgende på din side:
--------------
Sub Page_load(obj as Object, E as EventArgs)
  If Request.Querystring(\"Call\") = \"DoThis\" Then
      Call subDoThis()
  else
    [Gør alt det du ellers ville have gjort]
  End If
End sub

Sub subDoThis()
  [kode der skal udføres]
End Sub
--------------
/Odegaard
Avatar billede odegaard Nybegynder
12. december 2001 - 13:34 #17
Når man klikker på f.eks. en submit knap, kan man i koden for knappen, bede den om at kalde en bestemt funktion.
Dette er i bund og grund det samme som det der sker i ovenstående kode. Der sendes en GET til asp.net koden, som automatisk sørger for at afvikle koden. Hér koder vi det bare manuelt, og benytter sådan set POST fremfor GET (eller også er det omvendt... :-)

/Odegaard
Avatar billede mgade Nybegynder
12. december 2001 - 13:54 #18
Odegaard >> dit 13:03:22-svar er kun korrekt hvis du mener den ASP-side som Flash-filmen er embedded i.

Flash kan sagtens kalde en ny ASP/ASPX side uden at reloade den ASP/ASPX-side som Flashen er embedded i. Jeg har fx lavet mig en chat der henter og bringer chat fra Flash der er embedded i en asp-side som kun loades en gang. Den asp-side der henter og bringer chatter loades en gang i sekundet - eller hvert andet sekundt... Eller også er det omvendt? ;-D

Summasummarum (som sædvanlig) er det korrekte svar afhængigt af den kontext løsningen skal leve i.
Avatar billede odegaard Nybegynder
12. december 2001 - 14:00 #19
Det er da stadig måden hvorpå du vil kalde en funktion i en (anden) ASP.NET side.
Du bestemmer jo selv om du vil linke til den samme side, eller en anden, og om det skal være i f.eks. en anden frame.

/Odegaard
Avatar billede mgade Nybegynder
12. december 2001 - 14:04 #20
Yep. Men altså: Det kan lade sig gøre at kalde en asp-side uden at reloade \"Flash-moderen\", hvilket i fx en chat er ret vigtigt.
Avatar billede nikolajdu Nybegynder
12. december 2001 - 14:08 #21
Nemlig det var det vi lagde ud med her: loadVariablesNum (\"minASP.asp\", 0, \"POST\");

Problemet opstår fordi der skal kaldes en funktion på serveren. Før den overhovedet får nogen betydning er vi jo så nødt til at reloade siden.
Avatar billede mgade Nybegynder
12. december 2001 - 14:12 #22
Nikolajdu >> Nemlig :-) Om det er nødvendigt at reloade kommer jo lidt an på hvad funktionen skal gøre? (kontexten)

Frames er jo også en (kompliceret) mulighed - hvis man fx vil bevare flashen uforstyret
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