jQuery i samarbejde med .net ajax (ms)

Tags:    jquery asp.net c# ajax

Hej alle gæve udviklere,

Jeg er her i mandags begyndt i praktik og her er vi begyndt med en opgave omkring et Jeopardy spil's buzzer i browseren. Jeg er meget ny i webudvikling når det drejer sig om .NET. Med HTML 4 er det jo ikke muligt at pushe data fra serveren til clienter som deltager i spillet, så de skal jo peake "serveren" både for at få en deltager liste, der kan udvides on the fly når andre vil deltage, og når folk skal "buzze" sig ind.

På nuværende tidspunkt bruger jeg en timer fra den ajax implementering der er med til dot net. Det smarte i den er jo at jeg kan kalde de metoder som er backend (code behind). Men man kan kun have én timer, for har man 2 vil den med kortest tid blive eksekveret først og den anden aldrig nogen sinde (bruger det sammen med updatepanel og scriptmanager).

Så jeg (vi) overvejede at bruge jQuery, men hvordan vil det være fornuftigst at bruge den i denne sammenhæng, hvis man i det hele taget man kan. Jeg søger bare ideer og guidelines til hvordan man kunne komme uden om denne kattepine. Har søgt en del på google efterhånden.

EDIT: Skal nok lige siges det er webforms vi benytter




Indlæg senest redigeret d. 17.08.2011 18:02 af Bruger #6559
2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 7 karma
Sorter efter stemmer Sorter efter dato
Jeg har ikke selv benyttet mig af timers i jQuery, men en hurtig lille Google søgning gav dette plugin, som jeg tror har de timer funktioner du leder efter.

Jeg har kun prøvet at bruge AJAX i et MVC3-projekt og der fungerede det rigtig godt. Jeg kunne kalde voids osv. direkte i mine controllers. Jeg kan dog ikke se den store forskel i at gøre det ved webforms.

Hvis du nu evt. har en tom webform, der kunne hedde ajax, så kan du ved at have et parameter i din querystring styre hvilken metode du vil køre. F.eks ajax.aspx?method=buzz&id=35 ... du kan selvfølgelig også bare vælge at have en fil for hvert kald, det er kun et spørgsmål om smag og behag.

Angående AJAX-kald i jQuery, så er det meget nemt at bruge... f.eks. hvis du har en timer der skal kalde en side for at se om der er blevet buzzet:

Fold kodeboks ind/udJScript kode 


Ovenstående kode er kun et eksempel, ikke testet, men er 99% sikker på at det er den rigtige syntaks.

Og så lige et lille tip, står du på et tidspunkt og skal have en masse data sendt til serveren fra en form, kan du tilføje parameteren data: $("#formid").serialize(); og så evt. ændre type til POST.

Hvis du derimod skal opdatere en div, f.eks. med en deltager liste kan du skrive nedenstående for at opdatere div feltet med det modtagne data.

Fold kodeboks ind/udJScript kode 


Igen - ikke testet, men 99% sikker på at det vil virke.

jQuery har efter min mening en rigtig god dokumentation og er let at sætte sig ind i..

Held og lykke!



Indlæg senest redigeret d. 18.08.2011 13:22 af Bruger #16372
Sådan! Det er lige hvad jeg sad og skulle bruge. Jeg tror der skal læses lidt mere på de AJAX extensions ms har lavet selv, da de åbenbart laver postback, men det ser ud til at virke nu.

Stor tak herfra :)



t