Siinäpäse? Turhautunut (=väsynyt) puuhastelijakoodaaja kysyy...
Siis, on nettisivulla <div> lohko jossa on pari <select><option>… listaa. Näistä kun tehdään valinta, niin onchange laukaisee javavascript-ajax funktion mikä päivittää koko <div> muun sisällön, myös nuo <select><option>… tulostetaan <div>:iin uudelleen.
Doh, ihan kiva, mutta nyt jos klikataan linkkiä jonnekin muualle, ja sitten selaimen Back-napilla tullaan takasin ajax-sivulle, niin <select><option>… listaan tehdyt valinnat a) on muutettuna Safarissa ja b) alkuperäisessa default-tilassa Firefoxilla. Kummassakin Safarissa ja Firefoxissa se <div>:n loppusisältä on defaulttia.
Saisko mitenkään Back-napilla kaivettua sitä sivua mihin ajax-teki muutoksen. Sehän muuttaa saitin DOM:ia javascriptillä, niin luulin että se jäisi selaimen välimuistiin josta Back-nappi osaisi sen kaivaa näkyviin. Mutta ei kaiva ei.
AJAX:lla päivittyvä <div> ja selaimen back-nappi
Xcode, Mac OS X Server sekä muuta hauskaa ja hyödyllistä
6 viestiä
• Sivu 1/1
-
- Viestit: 18040
- Liittynyt: 20.2.2004 klo 23.12
- Paikkakunta: Tampere
AJAX:lla päivittyvä <div> ja selaimen back-nappi
Viesti Kirjoittaja Jamac »
Alihankintana printtipuolen graafista materiaalia!
-
- Viestit: 18040
- Liittynyt: 20.2.2004 klo 23.12
- Paikkakunta: Tampere
Viesti Kirjoittaja Jamac »
Googlasin ja...
Et joo.. ei taida onnistua...
Jaa... ehkä sittenkin... taitaa olla mulle liikaa, ehkä heitän koodit roskiin..
http://www.isolani.co.uk/blog/javascrip ... tAjaxBrokeBrowser vendors need to update their browsers so that JavaScript can modify the history object of a browser.
Et joo.. ei taida onnistua...
Jaa... ehkä sittenkin... taitaa olla mulle liikaa, ehkä heitän koodit roskiin..
http://codinginparadise.org/projects/dh ... EADME.htmlThe Really Simple History (RSH) framework makes it easy for AJAX applications to incorporate bookmarking and back and button support. By default, AJAX systems are not bookmarkable, nor can they recover from the user pressing the browser's back and forward buttons. The RSH library makes it possible to handle both cases.
Alihankintana printtipuolen graafista materiaalia!
-
- Viestit: 408
- Liittynyt: 11.12.2005 klo 23.37
Viesti Kirjoittaja MNi »
Itse joskus vastaavaa korjasin niin että ajax kutsussa laitan cookieen talteen millä sivulla ollaan ja jos tullaan uudelleen samalle sivulle niin sitten cookien avulla ladataan oikea sisältö. Tuo vaatinee sivulle uniikin id:n, jottei tuolle vanhalle sivulle mennä kun pitäisikin mennä oikeasti siihen alkutilaan esim. jonkin linkin kautta. Mutta sain sen toimimaan ihan kivasti lopulta.
RHS on kai kanssa hyvä, mutta jotenkin hankalan oloinen ainakin kun joskus katselin.
RHS on kai kanssa hyvä, mutta jotenkin hankalan oloinen ainakin kun joskus katselin.
MNi
-
- Viestit: 18040
- Liittynyt: 20.2.2004 klo 23.12
- Paikkakunta: Tampere
Viesti Kirjoittaja Jamac »
Oivoi, yhden submit-napin takia (tai sen puutteen halun takia) tämmöinen vaiva
Hulluhan tässä pitää olla!!!
No, mulla on siis "ulkoinen" php mikä tekee tuon <div>:n ja sitä php:tä käskytetään Ajaxilla. Jos sivulle tullaan eka kertaa, php ei saa $_GET arvoja - tyhjä stringi. Tällöin php pulauttaa defaultti <div>:n.
Muttasiis, koska kyseessä on aina sisäänkirjautunut asiakas, voidaan aina ei-defaultti pulautus tallentaa jonnekin assosioituna asiakkaaseen, ja sitten kun asiakas pyytää sivua ilman $_GET arvoja, niin tarkistetaan onko tarjota valmista koodia, joka on olemassa jos asiakas on käynyt sivulla ja tehnyt Ajax-menusta valintoja.
Back-nappi aiheuttaa nyt sen että php pulauttaa taas defaultti <div>:n, koska $_GET arvoja ei tule. Selain (ainakin Safari) muistaa kuitenkin <select> valikkojen tilan, vaikka <div>:n muut elementit ei sitten olekaan <select> valikkojen edellyttämässä tilassa. Dääm. Ehkä <select> :iin voisi laittaa jonkun random name:n hämäämään selainta.
Tän pitäis kai periaatteessa toimia. Life is life, but this is nerd's life
![Iso hymy [:D]](./images/smilies/icon_biggrin.gif)
![Iso hymy [:D]](./images/smilies/icon_biggrin.gif)
![Iso hymy [:D]](./images/smilies/icon_biggrin.gif)
No, mulla on siis "ulkoinen" php mikä tekee tuon <div>:n ja sitä php:tä käskytetään Ajaxilla. Jos sivulle tullaan eka kertaa, php ei saa $_GET arvoja - tyhjä stringi. Tällöin php pulauttaa defaultti <div>:n.
Muttasiis, koska kyseessä on aina sisäänkirjautunut asiakas, voidaan aina ei-defaultti pulautus tallentaa jonnekin assosioituna asiakkaaseen, ja sitten kun asiakas pyytää sivua ilman $_GET arvoja, niin tarkistetaan onko tarjota valmista koodia, joka on olemassa jos asiakas on käynyt sivulla ja tehnyt Ajax-menusta valintoja.
Back-nappi aiheuttaa nyt sen että php pulauttaa taas defaultti <div>:n, koska $_GET arvoja ei tule. Selain (ainakin Safari) muistaa kuitenkin <select> valikkojen tilan, vaikka <div>:n muut elementit ei sitten olekaan <select> valikkojen edellyttämässä tilassa. Dääm. Ehkä <select> :iin voisi laittaa jonkun random name:n hämäämään selainta.
Tän pitäis kai periaatteessa toimia. Life is life, but this is nerd's life

Alihankintana printtipuolen graafista materiaalia!
-
- Viestit: 18040
- Liittynyt: 20.2.2004 klo 23.12
- Paikkakunta: Tampere
Viesti Kirjoittaja Jamac »
Itseasiassa jos tuon php:n tekemän <div>:n tallettaisi jopa kantaan userid:lle assosioituna, niin se säilyisi sessionin ylitsekin, jolloin valikko olisi taas vaikka seuraavanakin päivänäkin siinä asemassa mihin asiakas sen jätti...
hmm... tämähän alkaa kirkastua kuin kotiviini.
hmm... tämähän alkaa kirkastua kuin kotiviini.
Alihankintana printtipuolen graafista materiaalia!
-
- Viestit: 18040
- Liittynyt: 20.2.2004 klo 23.12
- Paikkakunta: Tampere
6 viestiä
• Sivu 1/1
Palaa sivulle “Ohjelmointi, skriptit ja palvelimet”
Hyppää
- Yleiset aiheet
- ↳ Ajankohtaista Apple-maailmasta
- ↳ Käyttöjärjestelmät
- ↳ Ohjelmat
- ↳ Yleiskeskustelu
- Mac ja oheislaitteet
- ↳ Yleiskeskustelu laitteista
- ↳ MacBook, MacBook Pro ja MacBook Air
- ↳ iMac
- ↳ Mac mini
- ↳ Mac Pro ja Mac Studio
- ↳ Ongelmia Macin kanssa?
- iPhone, iPad ja Apple Watch
- ↳ iPhone-, iPad- ja Apple Watch -laitekeskustelu
- ↳ iPhone-, iPad- ja Apple Watch -ohjelmat sekä iOS
- ↳ Ongelmia iPhonen, iPadin tai Apple Watchin kanssa?
- Huviksi ja hyödyksi
- ↳ Off-topic
- ↳ Kuva ja graafinen suunnittelu
- ↳ Audio ja musiikki
- ↳ Video, televisio ja elokuvat
- ↳ Pelit ja pelaaminen
- ↳ Ohjelmointi, skriptit ja palvelimet
- ↳ Tietoturva ja varmuuskopiointi
- ↳ Verkot, mobiilidata ja muut puhelimet
- ↳ Retronurkka
- ↳ Foorumin ylläpito
- Kauppapaikka
- ↳ Myydään Mac
- ↳ Myydään iPhone, iPad ja iPod
- ↳ Myydään muut Applen tuotteet
- ↳ Myydään muuta tietotekniikkaa
- ↳ Ostetaan Mac
- ↳ Ostetaan iPhone, iPad ja iPod
- ↳ Ostetaan muut Applen tuotteet
- ↳ Ostetaan muuta tietotekniikkaa
- ↳ Vaihdetaan, annetaan, työtä haetaan ja tarjotaan
- ↳ Kauppapaikan keskustelu ja hintavinkit