Archief - [PROG]AJAX ajax request in achtergrond

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

GizeH

Legacy Member
Hallo,

Ik heb een website gemaakt die bij het ingeven van een zoekopdracht, via ajax een hoop data ophaalt van 4 andere sites, en deze lokaal opslaat.
Het ophalen van deze data kan redelijk lang duren. (daarom gebruik ik ajax).

Het probleem is:
wanneer de gebruiker een zoekopdracht ingeeft, worden de ajax requests verzonden, maar de gebruiker kan naar geen enkele andere link op de site gaan totdat de requests behandeld werden...

Ik zou dus moeten weten hoe je ervoor zorgt, dat bij het versturen van een ajax request, deze in de achtergrond loopt zodat de gebruiker intussen toch nog naar een andere pagina kan gaan + de request mag niet geannuleerd worden wanneer de gebruiker op een andere link klikt...

hopelijk heeft iemand hier een oplossing voor?

AsinuS

Legacy Member
Ik heb er geen weet van of dit kan, maar is het niet beter je zoekopdrachten te optimaliseren zodat deze gewoon minder lang duren..

Moto

Legacy Member
asynchroon ophalen heh ;)
AJAX = Asynchronous JavaScript and XML

GizeH

Legacy Member
De vertraging zit niet bij de zoekopdrachten maar bij het inladen van de verschillende sites, en daaraan kan ik niet veel doen.

Ik ken de term Asynchronous JavaScript and XML wel, maar waar vind ik ergens concreet info die mij verder kan helpen? Ik vindt enkel sites met XmlHttp object info (readystate enzo), maar kheb nog steeds geen oplossing gevonden...

Moto

Legacy Member
Dus wat ge eigenlijk wilt doen is
Page1.asp -> Client-side Ajax request
Page1.asp -> navigate naar Page2.asp
Page2.asp -> Back naar Page1.asp
Page1.asp -> Client-side Ajax request gedaan, data tonen

klopt dit?
Zal zo niet werken, 1 keer van de page weg bye bye ajax request.
Zal dan server-side gemaakt moeten worden, of een hidden frame waar ge uw requests bijhoud

tmagus

Legacy Member
snap eigenlijk nie why ge hier ajax voor wilt gebruiken, zo het nie veel simpler zijn dat gewoon uw zoekopdracht dus serverside laat uitvoeren. En dan kunde eventueel op elke pagina een ajax laten runnen die gaat gaan vragen aan uw server is "Is mijn data al klaar" en dan kan de server vb de gebruiker redirecten naar de pagina met data of kan het ajax object vb boodschap geven aan gebruiker dat zoekopdracht voltooid is met linkje naar de data ofzo

GizeH

Legacy Member
nee dit is de bedoeling:

je hebt op de index pagina een zoekvak.
stel je typt daar 'bus' is,

dan ga je naar een detailpagina.
Op deze detailpagina worden verschillende ajax requests gedaan.
deze requests doen hetvolgende:
ajax script1: haal alle synoniemen op van een site en steek ze in db, daarna resultaat returnen
ajax script 2: idem voor bvb vertalingen

de ajax gaat de results in db steken en een div innerHTML invullen met hun resultaat.

Maar als de ajax request afgebroken wordt voor bvb de synoniemen, zitten ze niet allemaal in de database...

AsinuS

Legacy Member
Dan zal je sowieso eerst heel je pagina moeten laten laden. Disable gewoon al de rest zodat de 'synoniemen-zoekopdracht' niet kan 'getriggerd' worden.

tmagus

Legacy Member
GizeH zei:
nee dit is de bedoeling:

je hebt op de index pagina een zoekvak.
stel je typt daar 'bus' is,

dan ga je naar een detailpagina.
Op deze detailpagina worden verschillende ajax requests gedaan.
deze requests doen hetvolgende:
ajax script1: haal alle synoniemen op van een site en steek ze in db, daarna resultaat returnen
ajax script 2: idem voor bvb vertalingen

de ajax gaat de results in db steken en een div innerHTML invullen met hun resultaat.

Maar als de ajax request afgebroken wordt voor bvb de synoniemen, zitten ze niet allemaal in de database...

duurt da opzoekwerk dan zolang? dat ge nie direct alle results kunt geven?

bedoel er is geen mens die ga wachten om de vertaling van "bus" te weten als da 10 min ga duren ze....
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan