event.preventDefault() werkt vraagteken-url tegen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je hier

Bekijk vacature »

Software developer (Python)

Functie Je komt te werken in het IT-team bestaande uit de Lead developer en 4 (medior/senior) developers. Gezamenlijk werken jullie aan de verbetering en uitbreiding van de software. Binnen het development team is er veel vrijheid en zelfstandigheid, zonder dat ze hiermee afdoen aan de kwaliteit. Zo hebben ze elke ochtend een korte stand-up (10:00 uur) en houden ze zo nu en dan pair-programming sessies. Ook is er een hele professionele ontwikkelcyclus waarbij code altijd eerst door een collega wordt getest voordat het naar deployement gaat. Je hebt in je werk oog voor kwaliteit, risico’s en het klantbelang. Communicatie met

Bekijk vacature »

Medior/senior PHP ontwikkelaar E-commerce

Functie Het software development team bestaat momenteel 5 scrum teams . Ieder team heeft een eigen SCRUM Master en eigen tester. Zij werken voornamelijk in PHP en met hun eigen geschreven framework wat Symfony based is . Jij bent samen met je collega’s verantwoordelijk voor het interne softwaresysteem en alle projecten die daar omheen lopen. Alles wat jij ontwikkelt, wordt direct toegepast en uitgerold (wereldwijd). Dit maakt jouw werk tastbaar en uitdagend! Een greep uit jouw werkzaamheden: Toevoegen en ontwikkelen van nieuwe functionaliteiten Logistieke software ontwikkelen voor intern gebruik Tientallen gigabytes aan data inzichtelijk maken Altijd op zoek gaan naar

Bekijk vacature »

Medior/senior Fullstack developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving Startende Software Ontwikkelaar gezocht met kennis van C# .NET! Ben jij net klaar met je opleiding en ben je op zoek naar je eerste echte werkervaring? Of heb jij al enige werkervaring maar ben toe aan iets nieuws? Dan is dit de perfecte kans voor jou! Wij zoeken namelijk een Junior Software Ontwikkelaar die klaar is voor een nieuwe uitdaging bij een leuke werkgeven in de regio Zeist. In deze functie werk jij vaak aan verschillende projecten en ga je bij klanten op bezoek. Ben jij op zoek naar een functie met uitdaging, diversiteit en verantwoordelijkheid? Dan is

Bekijk vacature »

Senior Mobile Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Mobile Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Gezocht: Ervaren VB6 developer met C# ambitie!

Bedrijfsomschrijving Dit bedrijf is een vooraanstaande softwareleverancier die gespecialiseerd is in het ontwikkelen van software pakketten voor autoschade herstel bedrijven. De software wordt gebruikt door meer dan de helft van alle autoschade herstel bedrijven in Nederland. Het team van professionals is op zoek naar getalenteerde collega developers die hun vaardigheden willen inzetten om het bedrijf te laten groeien. Functieomschrijving Voor dit bedrijf zoek ik een ervaren VB6 / VB.NET developer met interesse om op termijn verder te gaan in C#. In deze functie ben je verantwoordelijk voor het onderhouden van de bestaande softwarepakketten. Een deel van de code is nog

Bekijk vacature »

.NET Developer

Dit ga je doen Binnen het team bouw je aan een applicatie met andere .Net Developers, testers een Product Owner en een Business Analyst. Met het team wordt de backlog besproken. In overleg claim jij jouw deel en zorgt ervoor dat onderhoud en innovatie wordt gerealiseerd. Het project dat momenteel draait is het opgraden van de omgeving. Doorontwikkelen van de huidige applicatie; Overleggen met teamleden om de backlog te verdelen; Onderhouden van de huidige omgeving; Sparren met de business en het ophalen van nieuwe requirements. Hier ga je werken De organisatie is een van de grootste landelijke aanbieder van diverse

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Junior Front-End Developer

Je maakt een vliegende start van je carrière, door meteen mee te bouwen aan de digitale oplossingen van Coolblue. Wat doe je als Junior Front-End Developer bij Coolblue? Als Junior Front-End Developer ben je meteen vanaf de start onderdeel van een development team. Je kijkt veel mee met collega’s en volgt trainingen. Op dat moment komt je wil om te blijven leren naar boven. Daarnaast pak je in de sprints ook je eigen stories op om Coolblue iedere dag een beetje beter te maken. Je sterk analytisch vermogen komt dan goed van pas! Ook Junior Front-End Developer worden bij Coolblue?

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een ambitieuze werkgever in regio Tilburg waar jij volledig de mogelijkheid krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je gaat projecten gedurende het hele proces begeleiden. Je sluit aan bij afspraken met klanten om hun processen helder te krijgen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt aan nieuwe softwareoplossingen die de logistieke processen verbeteren of vernieuwen; Je houdt je bezig met het ontwikkelen van

Bekijk vacature »

Senior Java Developer

Als Senior Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en

Bekijk vacature »

Software Developer

Functie omschrijving Psst hé jij daar! Op zoek naar een nieuwe uitdaging als developer? Wacht niet langer en reageer direct. In deze functie ga je bij een familiebedrijf werken als developer. Je gaat maatwerk software ontwikkelen met de Microsoft stack. Je gebruikt technieken als C#, ASP.NET en MVC. Je werkt in een leuk team van andere developers. Je krijgt veel vrijheid in je werk en kan flexibel werken. Dagje thuiswerken? Geen probleem! Daarnaast is er veel ruimte om écht mee te denken met het bedrijf en met de klanten. Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Vanaf

Bekijk vacature »

Front-end Angular developer

Functie In jouw rol als Front-End developer werk je samen met de backend developers om middels tweewekelijkse sprints het platform naar een hoger niveau te tillen. Hiernaast heb je affiniteit met data en werk je graag samen met het team om de gegevensintegriteit en -beveiliging te waarborgen, om ervoor te zorgen dat de gebruiker wereldwijd de beste SaaS-services heeft. Deze organisatie heeft meer dan 100 mensen in dienst, waarvan er 45 in Nederland werken. Het ontwikkelteam bestaat uit 10 mensen en is verdeeld in 2 scrumteams. Het eerste team bestaat uit Java en Scala ontwikkelaars. Het tweede team, waar jij

Bekijk vacature »

.NET developer

Functie The position we have for you As a .NET developer you will work for one of our customers active in the High Tech Industry. Our customers are mainly located in the Eindhoven area. We are very selective when it comes to the projects we accept and therefore only focus on innovative and complex projects. Because our customers are mainly specialized in machine construction, you often work close to the machines. Our team currently consists of Embedded engineers, IOT developers and Cloud engineers. We mainly work on Microsoft projects where WPF, UWP, .NET Core and Microsoft Azure are used. Eisen

Bekijk vacature »
Fabian W

Fabian W

18/04/2015 23:14:45
Quote Anchor link
Ik heb een simpel get form #df met 2 select boxen #dm en #dy en een submit input #ds.
Via de volgende code haal ik een php file op en laad deze in mijn div #content_box.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
$(document).ready(function(){
    $('#df').submit(function(event){
        var month_ddchart = $('#dm').val();
        var year_ddchart = $('#dy').val();
        source_ddchart = '/data/ddc-'+month_ddchart+'-'+year_ddchart+'-body.php';
        $('#content_box').load(source_ddchart);
        event.preventDefault();
    });
});

Het probleem dat ik heb is dat het benodigde event.preventDefault() voorkomt dat de parameters in de url komen. Hoe kan ik dit oplossen?
 
PHP hulp

PHP hulp

17/05/2024 01:07:26
 
Wouter J

Wouter J

19/04/2015 00:36:01
Quote Anchor link
Waarom is event.preventDefault() nodig? Als je wel de default behaviour wil (het submitten van het form en daarbij het toevoegen van parameters aan de URL), dan moet je dit niet gaan voorkomen.
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2015 00:55:17
Quote Anchor link
Fabian W op 18/04/2015 23:14:45:
Het probleem dat ik heb is dat het benodigde event.preventDefault() voorkomt dat de parameters in de url komen. Hoe kan ik dit oplossen?

Wijs eens in het bovenstaande code-fragment aan waar je query-parameters gebruikt, want ik zie ze niet.
 
Fabian W

Fabian W

19/04/2015 09:49:22
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
  
  <form method="get" class="load_ddchart" id="df" name="df">
      <select class="form_select" id="dm" name="dm"><option value="jan">Januari</option><option value="feb">Februari</option><option value="mrt">Maart</option><option value="apr">April</option><option value="mei">Mei</option><option value="juni">Juni</option><option value="juli">Juli</option><option value="aug">Augustus</option><option value="sept">September</option><option value="okt">Oktober</option><option value="nov">November</option><option value="dec">December</option></select>
      <select class="form_select" id="dy" name="dy"><option value="2015">2015</option><option value="2014">2014</option><option value="2013">2013</option><option value="2012">2012</option></select>
      <input class="go_button" id="ds" name="ds" type="submit" value="Go"/>
  </form>

Vanuit dit form maak ik dus een link als /data/ddc-feb-2015-body.php.
Als ik preventDefault() er uit sloop, krijg ik heel kort het gewenste file in de content_box te zien, waarna de default actie van de browser wordt uitgevoerd: redirecting naar het oorspronkelijke file (de index.php met lege content_box). De parameters (?dm=feb&dy=2015&ds=Go) blijven zo wel in de url staan, maar ik heb er niks aan.
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2015 10:59:00
Quote Anchor link
En wat wil je nu eindelijk bereiken?
- wel een redirect na afloop naar ... ?
- geen redirect, maar met inladen van URL ... ?
- iets anders?

Die event.preventDefault() heeft namelijk enkel effect op het verzenden van het formulier - dit wordt tegengehouden. Verder wordt er op geen enkele manier functionaliteit "beperkt" zoals jij het laat overkomen, de veroorzaker van het ongewenste gedrag zit dus waarschijnlijk ergens anders.

Volgens mij is er wel een soort van ongeschreven regel of goede gewoonte om die preventDefault() meteen aan het begin van de event-afhandeling te zetten, om duidelijk te maken dat het niet de bedoeling is dat de bijbehorende actie (het verzenden van het formulier zelf) ook daadwerkelijk wordt uitgevoerd.
 
Fabian W

Fabian W

19/04/2015 12:28:14
Quote Anchor link
Wat ik dus wil bereiken is:
1. Het laden van een ander php file in een div d.m.v. een form
2. Het weergeven van de form variabelen in de url

Zonder preventDefault() bereik ik alleen goal 2
Met preventDefault() bereik ik alleen goal 1 (maakt niet uit waar ik preventDefault neerzet).
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2015 13:33:34
Quote Anchor link
Fabian W op 19/04/2015 12:28:14:
2. Het weergeven van de form variabelen in de url

Ehhh... Je wilt dus de URL van de huidige pagina aanpassen zonder weg te navigeren van die pagina, en dan de daadwerkelijke informatie ophalen via AJAX?

Waarom gooi je niet gewoon de AJAX-call er tussenuit, dit klinkt namelijk ontiegelijk omslachtig. Is dit om niet "extra" content te laden (een extra page refresh), om hoeveel data gaat het helemaal?

Dus in plaats van:
- submit form, vang submit af
- bak URL mbv form data, haal pagina op mbv AJAX
- pas URL handmatig aan, alsof het form gesubmit was

gewoon:
- submit het formulier....

Alternatief #2:
Mogelijk wil je zoiets.

Alternatief #3:
URL rewriting.

EDIT: jQuery en AJAX zijn hulpmiddelen, geen doelen. Je hoeft het niet per se te gebruiken in dit geval, dus ik snap niet dat je zoveel moeite doet om het moeilijker te maken op deze manier.
Gewijzigd op 19/04/2015 13:37:21 door Thomas van den Heuvel
 
Fabian W

Fabian W

19/04/2015 14:26:09
Quote Anchor link
Thanks! Duidelijk antwoord.

Kan je dit bereiken door url rewriting?
Indien ja, dan is dat veruit de beste oplossing, want dan kan ik de url meteen omschrijven tot iets van site.com/ddchart/feb/2015 wat natuurlijk super mooi is, maar ja ik weet niet of dat haalbaar is.

Anders is de eerste optie denk ik het best. Ik dacht dat dit probleem kleiner zou zijn met Ajax, maar een andere manier van data ophalen kan ik ook doen. De data die opgehaald wordt is niet zo enorm groot. Vooral tabel data. Dit kan in het uiterste geval tot 100 png en 100 jpg afbeeldingen bevatten. Dat beinvloedt de snelheid het meest denk ik.
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2015 15:05:16
Quote Anchor link
Fabian W op 19/04/2015 14:26:09:
Kan je dit bereiken door url rewriting?
Indien ja, dan is dat veruit de beste oplossing, want dan kan ik de url meteen omschrijven tot iets van site.com/ddchart/feb/2015 wat natuurlijk super mooi is, maar ja ik weet niet of dat haalbaar is.


Dit lijkt mij vrij eenvoudig, herschrijf alles van de vorm /ddchart/*/* (naar bijvoorbeeld script.php?argument1=waarde1&argument2=waarde2) waarbij de eerste * overeensteemt met een maand (je zou er nog voor kunnen kiezen om hier een maandnummer met een "leading zero" van te maken, en de tweede * met een jaartal.

Of je draait het om, dan stemt de alfabetische sortering overeen met de numerieke (2014/12 komt voor 2015/01 komt voor 2015/02 etc).

En met een enkel argument zou je een soort van jaaroverzicht kunnen teruggeven.
 
Fabian W

Fabian W

19/04/2015 20:12:34
Quote Anchor link
Goeie tips. Sinds mijn .htaccess file nog leeg is, zal ik mij in de komende tijd wel gaan verdiepen in hoe dat allemaal werkt.

Trouwens een oplossing zonder Ajax load is niet veel anders:
Nog steeds geen variabelen in de url en een naar effect van onderstaande manier is dat het object een verkeerde grootte heeft.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
document.getElementById("content_box").innerHTML='<object type="text/html" data='+source_ddchart+' ></object>';
Gewijzigd op 19/04/2015 20:34:25 door Fabian W
 
Thomas van den Heuvel

Thomas van den Heuvel

19/04/2015 21:32:51
Quote Anchor link
En als je je .htaccess schoon wilt houden zou je ook kunnen overwegen om alle verzoeken naar niet-bestaande scripts door te sturen naar index.php waar je verder bepaalt hoe deze afgehandeld dienen te worden.

Of je regelt alle routing van je site op deze manier.
Gewijzigd op 19/04/2015 21:33:36 door Thomas van den Heuvel
 
Fabian W

Fabian W

20/04/2015 11:45:56
Quote Anchor link
Nee ik vind het prima dat .htaccess gebruikt wordt. Ik heb er alleen nog nooit mee gewerkt. Dus ik heb geen idee hoe je de browserurl moet omschrijven als een bepaalde inhoud geladen is.
 
Fabian W

Fabian W

24/04/2015 23:54:46
Quote Anchor link
Fixed it!!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_GET['ds'] == "Go")  {
include 'data/ddc-'.$_GET['dm'].'-'.$_GET['dy'].'-body.php';
}

?>


Niks moeilijk doen met javascript of ajax. Gewoon met php doet die het wel!
Gewijzigd op 24/04/2015 23:57:17 door Fabian W
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.