Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


ASP.NET 3.5 Ajax och Browser History

Postades av 2009-01-09 16:57:29 - Anders Malmgren, i forum asp.net generellt, Tråden har 1 Kommentarer och lästs av 717 personer

Hej.
Jag har provat denna nya Ajax-funktion som kommer med 3.5 SP1 av .Net.
Allså att få back/forward stöd i webläsaren för Ajax, samt att folk kan direktlänka till en ajaxfuntkion genom att klippa ut urlen i addressfönstret.

Ovanstående funkar bra, urlen blir /?id=1#articleId=10

Där #articleId=10 betyder att produkt med ID 10 ska visas, detta funkar kanon.
Men nu till de två problemen jag har

1) Client side triggar clienten ett ajax anrop för att visa produkten, i denna js-metod kör jag koden för att lägga till en historypoint

code:
Sys.Application.addHistoryPoint({articleId: article.Id});



Nu hamnar #articleId i urlen
Men nu triggas även stateChangeMetoden (Den som triggas när en användare klickar på back/forward button eller när en användare går in på sidan med #articleId i urlen) I den metoden kör jag ju js-metoden för att visa produkten och då blir det ju rundgång eftersom addHistoryPoint körs igen, på server side kan man avgöra om ScriptManager befinner sig i Navigate mode och på så sätt inte lägga till historyPoint, men jag har inte hitttat nått liknande om client side.

Koden för state changed

code:
function onStateChanged(sender, e)
{
if(e.get_state().articleId != null) {
ShowArticle(e.get_state().articleId);
}
}



Detta problem går att kringå genom att skriva egen kod för att avgöra om man navigerar eller inte, men det måste ju finnas stöd i clientside apiet eftersom det finns stöd för det i serverside apiet.

2) Nu till det större problemet. Efter att man addad en historyPoint så får ju urlen #articleId=x. Om jag nu triggar en postback på sidan, så kommer ju stateChanged triggas och produkten visas igen. Jag vill allså ta bort den från urlen, eller alternativt adda en ny historypoint när man trycker på "stäng" för produkten. Men addar jag en historyPoint #close=1 så kommer urlen bli #articleId=x&close=1. Apiet måste ju stödja att man tar bort en point?


Svara

Sv: ASP.NET 3.5 Ajax och Browser History

Postades av 2009-01-10 23:08:57 - Anders Malmgren

Ett sätt att lösa det på är att istället för att ta bort articleId history pointen så ändrar man bara articleId=0 när man stänger produktfönstret. I navigate eventet kollar jag sedan att articelId != 0

vet inte om detta är det bästa sättet att lösa det på, men det funkar iallafall


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 165
27 952
271 704
695
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies