appendto schreef op zaterdag 31 december 2016 @ 16:07:
[...]
Ziet er heel goed uit! Ik moet zeggen dat ik het netjes vind dat de site nog steeds goed te gebruiken is als je JavaScript uitschakeld. Ik heb standaard NoScript aan. Ik heb niet heel uitgebreid getest maar wat mij wel opviel is dat de zoekfunctie niet werkt.
Misschien een tip: Ik zie dat je tekstveld niet in een form zit. Ik zou deze in een form stoppen en de action laten wijzen naar je zoekscript. Pas vervolgens je zoekscript aan zodat deze een volledige HTML pagina terug geeft als je deze zonder bepaalde params aanroept. Als je de params wel mee geeft dan geeft deze stukjes HTML terug zodat je deze kan aanroepen dmv ajaxing. Ook een zoekknop zou ik er naast zetten die je verbergt als javascript aan staat.
Hoe werkt het vergelijken trouwens. Momenteel is het zo als ik er een aanvink dan wordt ik meteen geredirect naar de pagina van die auto.
Thx voor de feedback.
Zoekfunctie van kenteken vanaf de voertuigen zoek pagina werkt inderdaad niet. Op mijn development server had ik kenteken als lowercase maar op productie server uppercase. En alles wordt lowercase opgestuurd dus dat moet ik nog even oplossen. De overige filters werken wel. Ik zal nog even kijken of ik het in een form ga wrappen.
Voor het vergelijken geldt alleen het gebied rondom de "vergelijk" button. Daaromheen wordt je inderdaad verwezen naar de kenteken pagina. Maar het vergelijken gaat ook met Javascript, kentekens opslaan in Localstorage en een popup tonen met de geselecteerde kentekens.
RagingPenguin schreef op zaterdag 31 december 2016 @ 16:28:
[...]
Een AJAX call stukjes html terug laten geven en die in een pagina stoppen? Brrrrr.... Daar is JSON en javascript voor bedacht. Dan hoef je niet in je backend je druk te gaan maken over hoe dat je front-end ook alweer in elkaar zit. Hou structuur, styling, logica en data maar lekker van elkaar gescheiden, dat voorkomt een hoop fuck-ups en spaggetti-code.
Zoals appendto hieronder noemt haal ik HTML op via API calls.
Je aanname over structuur, spaghetti code, fuck-ups, etc. klopt niet.
Want alles is gebouwd met het Laravel framework. In een controller render ik een hele pagina. En een pagina bestaat uit allemaal gescheiden views. Via een API call render ik een enkele view.
Voorbeeld van API call ophalen filter opties:
code:
1
2
| $view = view()->make('list.checkbox', compact('key', 'eigenschappen', 'selections'));
return response($view->render()) |
Hierdoor hou ik juist mijn structuur, styling, logica en data van elkaar gescheiden. Wat ik wel overweeg is om Laravel te combineren met bv. AngularJS voor het interactieve gedeelte van de website.
Maar wat nu juist wel mooi is: bij voertuigen pagina voeg ik allemaal views samen. Bij het selecteren van een filter vervolgens een API call om de voertuigen op te halen die voldoen aan de gekozen filters. Met het stukje code hierboven render ik dan een deel van de website en return ik het als HTML.
Als ik Angular zou gebruiken ga ik de front-end code twee keer schrijven. Een keer om de pagina volledig te renderen en daarna nogmaals om de JSON van API calls te renderen client-sided.
Verder heb ik wel een JSON API voor de Android en iOS app.
[
Voor 12% gewijzigd door
JJ93 op 01-01-2017 16:02
]