Kalender onload

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior cloud engineer / full stack developer

Functie­omschrijving Het Koninklijk Meteorologisch Instituut is 'data driven' sinds 1854. Waarnemen, data verzamelen, modelleren, analyseren en duiding geven zijn de kernactiviteiten van het instituut. Waarnemingen komen van satellieten, radar, vliegtuigen in de lucht, maar ook van de meer dan 300 vrijwilligers die neerslagmetingen doen. De ICT van het instituut is zeer omvangrijk en voor de uitvoering van onze modellen beschikken we over een eigen HPC (supercomputer). Veel systemen zijn hoog beschikbaar uitgevoerd en kennen geen downtime. Als senior cloud engineer ben je in de lead bij de opzet en inrichting van het cloud platform, bij het vormgeven van applicaties voor

Bekijk vacature »

.NET Developer

.NET Developer De uitgebreide versie Jij hebt ruim twee jaar ervaring als developer. Nu wil je graag je tanden zetten in nog complexere projecten. Samen met je team bereik je nieuwe hoogtes en zelfstandig maak je meters. Je hebt behoefte aan collegae die jou alles leren op het gebied van technologie maar wilt tegelijkertijd ook graag je eigen opgedane kennis delen. Alles wat vandaag nog onbekend is, moet je morgen toepassen in de volgende uitdaging en dàt is wat jou scherp houdt. Je hebt geen zin in een 60-urige werkweek maar haalt wel plezier uit zo nu en dan een

Bekijk vacature »

Front-end ontwikkelaar gezocht!

Functieomschrijving Binnen deze functie ga je met ervaren developers elke dag werken aan technisch uitdagende projecten. Jij werkt hier voornamelijk met HTML en (S)CSS, TypeScript en Angular en Boostrap. Als Front-end developer bouw je hier Singe Page Applications, weet je hoe je API's met elkaar kan laten praten en heb je affiniteit met design. Met jouw skills en drive wil jij graag het beste uit jezelf halen net zoals zij dat willen. Als je kennis hebt van van Node.JS hebt dan is dit zeer zeker een grote pré. Op dit moment zijn ze met hele toffe projecten bezig. Functie-eisen -

Bekijk vacature »

Web Developer

Help jij graag mee met het optimaliseren van ons platform? Solliciteer dan naar de functie Web Developer. Op ons hoofdkantoor in Amsterdam krijg je alle ruimte om je kwaliteiten te tonen. Jouw baan ChipSoft maakt breed gebruik van webtechnologie voor de ondersteuning van administratieve processen. Als ontwikkelaar ben je verantwoordelijk voor het onderhouden en verbeteren van de applicaties op ons platform. Jij richt je met name op het ontwikkelen van nieuwe applicaties en het onderhouden van de gebruikte programmatuur op ons platform. Denk hierbij aan e-learning en projectplanning. Jouw team Je komt op de 25ste verdieping van ons hoofdkantoor in

Bekijk vacature »

ETL Developer Datawarehouse

Wil jij je ETL-ontwikkelexpertise inzetten binnen de zorg? Dan is dit jouw baan! Je werkt vanuit de Crystal Tower in Amsterdam met de nieuwste Microsoft-technieken aan slimme oplossingen die zorgorganisaties helder inzicht geven in hun verbeterpunten. Jouw baan Onze datamodellen geven ziekenhuizen meer inzicht in hun huidige activiteiten en verwachte ontwikkelingen. Jij gaat deze complexe modellen verder uitbouwen én ontwikkelt en verbetert daarbij proactief de ETL in C# en SQL. Hierbij heb je alle ruimte om te sparren met (ervaren) collega-ETL-ontwikkelaars en werk je samen met onze BI-ontwikkelaars, software developers en consultants technische implementatie. Jouw team Je versterkt een gemotiveerd

Bekijk vacature »

Digital Workplace Engineer

Ben jij een ambitieuze Digital Workplace Engineer die de ontwikkelingen en innovaties op het gebied van Digital Workplace & Cloud op de voet volgt? Wij zoeken ter versterking van ons team zowel multi-skilled als specialistische engineers met passie voor hun vak! Bij ons krijg je de ruimte en vrijheid om in de praktijk jezelf verder te ontwikkelen op diverse projecten en aan je theoretische kennis te werken door het volgen van trainingen en behalen van certificaten. Wat ga je doen? Als Digital Workplace Engineer werk je binnen een team van enthousiaste specialisten om de hoog beschikbare Digital Workplace infrastructuren (zowel

Bekijk vacature »

C# backend developer, Rotterdam

Voor een grote organisatie in Rotterdam zijn we op zoek naar iemand met ruime ervaring in het ontwikkelen van applicaties in .NET C#. Het gaat hier om een organisatie met een maatschappelijke impact. Hun systemen zijn gericht op een groot aantal klanten waarbij het belangrijk is dat de applicaties helder, toegankelijk en up-to-date zijn. Als .NET C# developer werk je aan uiteenlopende applicaties, APIs en het interne framework. Dit doe je binnen een SCRUM team en meedenkt binnen het hele proces. Het team bestaat uit meerdere C# developers variërend van medior tot senior. Er is dus veel kennis en ervaring

Bekijk vacature »

C# Developer

De uitgebreide versie Jij hebt ruim twee jaar ervaring als developer. Nu wil je graag je tanden zetten in nog complexere projecten. Samen met je team bereik je nieuwe hoogtes en zelfstandig maak je meters. Je hebt behoefte aan collegae die jou alles leren op het gebied van technologie maar wilt tegelijkertijd ook graag je eigen opgedane kennis delen. Alles wat vandaag nog onbekend is, moet je morgen toepassen in de volgende uitdaging en dàt is wat jou scherp houdt. Je hebt geen zin in een 60-urige werkweek maar haalt wel plezier uit zo nu en dan een technische meeting,

Bekijk vacature »

Enthousiaste DevOps-ontwikkelaar voor eIDAS

Functie­omschrijving De Dienst ICT Uitvoering, kortweg DICTU, is een van de grootste en meest vooruitstrevende ICT-dienstverleners van de Rijksoverheid. Wij bouwen onder meer de veilige en betrouwbare digitale toegang tot de diensten en producten van het ministerie van Economische Zaken en Klimaat voor burgers en bedrijven in het buitenland. Daar werk jij als DevOps-ontwikkelaar bij DICTU in Assen aan mee. Het ministerie van Economische Zaken en Klimaat heeft voor haar diensten en inspecties één moderne toegangspoort. Een aantal van die diensten en inspecties is mede dankzij jou ook voor burgers en bedrijven uit acht EU-landen veilig en betrouwbaar toegankelijk. Dat

Bekijk vacature »

Huursector zoekt PHP medior/senior (Symfony) devel

Functieomschrijving Als PHP developer werk je aan hun platform binnen een multidisciplinair Scrum team. Je gaat samenwerken met andere developers binnen een multidisciplinair Scrum team. Jouw werkzaamheden richten zich voornamelijk op de Backend met Symfony. Je zorgt ervoor dat grote hoeveelheden data goed verwerkt worden. Dat doe je door een oplossing te bedenken in kleine hoeveelheden die snel worden gereleased. Dat doe je ook middels cloud met technieken als Docker en Kubernetes. In de rol van developer krijg je veel vrijheid om samen met je team te zoeken naar goede oplossingen dus je krijgt de mogelijkheid om te experimenteren met

Bekijk vacature »

Support medewerker (1e lijns)

Wat zijn je taken? Als support medewerker werk je vanuit onze locatie in Dodewaard en ben je verantwoordelijk voor de 1e lijns IT support aan onze klanten, waaronder het oplossen van vragen en problemen met betrekking tot applicaties, netwerkcomponenten, Microsoft 365 en andere diensten. Je beantwoord vraagstukken direct via de supportdesk of zet diepgaande vragen door naar de 2e lijns support. Daarnaast houd je je bezig met het up-to-date houden van onze beheerdiensten, het monitoren van netwerken en de controle van back-ups. Wat verwachten we van jou? Je hebt een relevante opleiding afgerond en brede interesse in de ICT Je

Bekijk vacature »

Technisch Ontwerper / Applicatie Ontwikkelaar

Technisch Ontwerper / Applicatie Ontwikkelaar Actief Wat ga je doen? Als Technisch Ontwerper / Applicatie Ontwikkelaar kom je te werken bij onze gerenommeerde klanten op projecten of opdrachten van omvang en formaat. Je bent verantwoordelijk voor het omzetten van functionele specificaties naar een technisch ontwerp, het ontwerp van programmaspecificaties voor toepassingen, de realisatie van (gewijzigde) programmaonderdelen en databestanden van toepassingen en de technische systeemtest van applicatietoepassingen. Daarnaast geef je vorm aan webpagina’s en applicaties, stel je gebruikersdocumentatie op en verleen je ondersteuning bij het oplossen van productiefouten. Tevens ben je verantwoordelijk voor het samenstellen en onderhouden van de applicatie c.q.

Bekijk vacature »

Senior .NET developer/ architect gezocht, api deve

Ben je een ervaren .NET developer en op zoek naar baan waarbij je je ook meer kunt gaan richten op architectuur? Binnen een leuke, sociale en betrokken werkomgeving? Met technieken als .NET Core en Azure? Dan zou deze baan wellicht iets voor jou kunnen zijn. Voor een organisatie in Rotterdam zijn we op zoek naar eens senior .NET ontwikkelaar/ architect. De organisatie bevindt zich in de financiële branche en is een van de grotere spelers in hun vakgebied. De organisatie bestaat uit circa 600 medewerkers en heeft verschillende vestigingen in Nederland. Het hoofdkantoor zit in Rotterdam en daar is ook

Bekijk vacature »

System Engineer

Kom jij ons team versterken? Wij zijn ITSupervision, een gezellig bedrijf met familiesfeer. Wij bieden diensten zoals informatiebeveiliging, cloudoplossingen en beheer van IT-omgevingen. Onze collega’s zijn allemaal expert op hun vakgebied en samen verzorgen we (voornamelijk Windows-based) kantoorautomatisering voor zo’n 25 klanten en omgevingen variërend van 50 tot 500 eindgebruikers. In de rol van System Engineer ben je verantwoordelijk voor een vaste groep klanten. Je krijgt verschillende projecten in je portefeuille, wat vraag om veel verantwoordelijkheid én zelfstandigheid! Herken jij jezelf hierin? Naast dat je de technische skills meeneemt om deze functie uit te oefenen ben je klantgericht en leergierig.

Bekijk vacature »

.NET Developer Zorg-ICT

In een sector waarin de ontwikkelingen op het vlak van zorg-ICT in een stroomversnelling zitten, biedt ChipSoft een ultramodern en ziekenhuisbreed geïntegreerd elektronisch patiëntendossier. Dankzij ons groeiende marktaandeel in België is ChipSoft op zoek naar nieuwe collega’s. Jouw job Je bent verantwoordelijk voor het ontwerpen, ontwikkelen, ondersteunen en onderhouden van jouw eigen module. Het gaat om complexe ICT-producten die feilloos moeten functioneren binnen de zorgorganisatie. Je werkt zowel zelfstandig als in een team. ChipSoft maakt gebruik van een zelf ontwikkeld multi-tier framework. Tijdens een interne opleiding leren wij jou hoe je zelf aan de slag kan binnen deze architectuur. Jouw

Bekijk vacature »
Levy van der Meijden

Levy van der Meijden

21/09/2019 01:56:09
Quote Anchor link
Beste leden,

Op dit moment worden de waardes van de kalender geladen, wanneer ik op een button klik.

Dit is de functie voor het laden van de gegevens.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<script>
$(document).ready(function() {
function checkDate(selectedDate) {
<?php

$q
="select distinct date_format( date, '%d-%m-%Y' ) as date from sportevenementen";

$str="[ ";
foreach ($dbo->query($q) as $row) {
$str.="\"$row[date]\",";
}

$str=substr($str,0,(strlen($str)-1));
$str.="]";
echo "var not_available_dates=$str";

?>
    
 var m = selectedDate.getMonth()+1;
 var d = selectedDate.getDate();
 var y = selectedDate.getFullYear();
 m=m.toString();
 d=d.toString();
if(m.length <2){m='0'+m;}
if(d.length <2){d='0'+d;}
 var date_to_check = d+ '-' + m + '-'  + y ;
 for (var i = 0; i < not_available_dates.length; i++) {
 if ($.inArray(date_to_check, not_available_dates) != -1 ) {
 return [true,'voor_dates','Bekijk dag'];
 }else{
return [false,'na_dates','Geen agenda punten'];
}
}
}
$(function() {
    $( "#date_picker" ).datepicker({
dateFormat: 'dd-mm-yy',
beforeShowDay:checkDate,
onSelect:function() {
selectedDate = $('#date_picker').val();
var url="display-data.php?selectedDate="+selectedDate;
$('#d1').load(url);
  }
});
});
})
</script>

Op internet heb ik wel gevonden, hoe een page onload wordt gebruikt.
<script type="text/javascript">

    $(document).ready(function () {
        yourFunction();
    });
    function yourFunction(){
      //some code
    }
</script>

window.onload = yourFunction;


Verschillende manieren geprobeerd om dit toe te passen, maar het is nog niet gelukt.
Zou iemand kunnen vertellen, hoe ik de onload kan toepassen?

Bedankt alvast,

Met vriendelijke groet,

Levy van der Meijden

Edit:
Code tags toegevoegd, zie ook de opmaakcodes in de Veelgestelde Vragen
Gewijzigd op 21/09/2019 07:33:20 door - Ariën -
 
PHP hulp

PHP hulp

03/07/2020 00:34:46
 
- Ariën -
Beheerder

- Ariën -

21/09/2019 07:35:27
Quote Anchor link
Ben je je bewust dat je PHP-script altijd uitgevoerd wordt? PHP wordt al op de server uitgevoerd, en javascript door de browser.
 
Rob Doemaarwat

Rob Doemaarwat

21/09/2019 12:01:54
Quote Anchor link
Die window.onload = yourFunction; staat nu buiten de <script> tags, dus dat gaat niet werken. Maar je ready event zou het ook moeten doen (dus kies 1 vd 2). Maar nu moet je dus ipv yourFunction() of //some code dezelfde functie aanroepen die je nu (blijkbaar ergens) aan de onclick van de butten hebt gekoppeld.
 
Levy van der Meijden

Levy van der Meijden

21/09/2019 14:01:48
Quote Anchor link
Ja, de PHP-script wordt elke keer uitgevoerd wanneer ik een PHP-pagina laadt. Maar van een JavaScript wist ik het niet.
Dat weet ik dat de window.onload = yourfunctie buiten het script staat. Verschillende manieren geprobeerd om dit tussen het script te plaatsen, maar dit is nog niet gelukt. Ook is het niet gelukt om een functie van een onload toe te passen.

document.getElementById("checkdate").onload = function() {yourfunctie()};

Met vriendelijke groet,

Levy van der Meijden
Gewijzigd op 21/09/2019 18:30:00 door Levy van der Meijden
 
Thomas van den Heuvel

Thomas van den Heuvel

21/09/2019 17:32:13
Quote Anchor link
Maar, dit is toch gewoon onderdeel van de initialisatie van je DatePicker kalender? Lijkt mij dat je dit dus niet toepast op het document of wat dan ook (en daarna met een click naar je kalender stuurt), maar (rechtstreeks) op de datepicker (zelf)?

Je kunt volgens mij met de optie/callback beforeShowDay() bepalen op welke datums geklikt kan worden en met de optie/callback onSelect() kun je vervolgens programmeren wat er moet gebeuren als je op een van die datums klikt.

Maar dit kun je dus helemaal in de initalisatie van je datepicker regelen, eventueel afhankelijk van informatie uit je database.

Met het bovenstaande zou je het gewenste effect moeten kunnen bereiken (een soort event kalender waar je op kunt klikken). Hoe je de code precies vormgeeft valt met deze twee specifieke opties wel bij elkaar te googlen en anders kunnen we hier wel even verder kijken.

EDIT: de bovenstaande code zou dus, mits goed vormgegeven, moeten werken.
EDIT: ben je nagegaan of je JavaScript code ergens breekt? dat zou mogelijk kunnen verklaren waarom dingen (ogenschijnlijk) niet werken.
Gewijzigd op 21/09/2019 17:46:24 door Thomas van den Heuvel
 
Levy van der Meijden

Levy van der Meijden

21/09/2019 18:28:58
Quote Anchor link
Bedankt voor je reactie. Ja, na het laden van de kalender gebruik ik de functie Datepicker. Nu heb ik nog geen onload functie voor het laden van de kalender. Graag zou ik bij het laden van de pagina, de kalender willen zien. Nu wordt de kalender pas getoond, wanneer ik op een button klik.
<input type="text" size="13" value="Openen" class="btn2" id="date_picker">

Moet ik voor het laden van de kalender, de functie Checkdate gebruiken?
 
- Ariën -
Beheerder

- Ariën -

21/09/2019 19:04:56
Quote Anchor link
De plain onLoad voor lijkt mij niet echt nodig. Dat doet de .ready() in jQuery functie al.
Ik neem aan dat je die ook inlaadt?
 
Levy van der Meijden

Levy van der Meijden

21/09/2019 19:26:01
Quote Anchor link
Oke, nee volgens mij niet.
Het script bovenaan gebruik ik als volgt:

$(document).ready(function() {
function checkDate(selectedDate) {

Bedoel je het inladen van de date_picker?
 
Thomas van den Heuvel

Thomas van den Heuvel

22/09/2019 00:23:06
Quote Anchor link
Hm. Er begint mij iets te dagen.

Wanneer je in zijn algemeenheid zoiets hebt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$(
something
);
lala;

Dan gebeurt er het volgende:
- er wordt gestart met de uitvoering van "something"
- direct daarna wordt "lala" uitgevoerd

Het kan dus zijn dat "something" nog bezig is als "lala" al uitgevoerd is. Met dit soort functienesting en callbacks kan het dus heel goed zijn dat er verschillende dingen "tegelijkertijd" gebeuren maar de volgorde is dan niet gegarandeerd.

Maar ook: als je op twee verschillende manieren besluit wanneer iets "klaar voor gebruik" is dan kom je mogelijk in de knoop met timing. Een combinatie van window.onload en $(document).ready(...) is daarom misschien ook niet echt aan te bevelen.

Dat gezegd hebbende, nog twee dingen. Allereerst: ben je nagegaan wanneer onload en ready vuren? In mijn datepicker probeersel is onload consistent sneller dan alles wat in document ready gebeurt. Dat zou in jouw geval dus ook inhouden dat je datepicker nog bezig is met whatever als je deze probeert te vullen.

Ten tweede: misschien moet je ook gaan nadenken over het dynamisch ophalen van de event-data. Nu haal je *alle* events op, niet enkel van de huidige maand. Op den duur wordt zo'n query een beetje onhandelbaar en/of wil je hier meer condities aan ophangen in geval van gepersonaliseerde event-kalenders ofzo.

Jammergenoeg heeft de datapicker niet echt veel (geen?) events waar je op in kan haken. Wat je wel kunt doen is de initialisatie van het datepicker-object inbouwen in de callback voor het ophalen van de initiële events. Ook zou je dingen wat verder kunnen splitsen zodat je de verschillende dingen functioneel scheidt en de code wat schoner wordt.

Je krijgt dan bijvoorbeeld de volgende opzet:
index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>DatePicker Event Calendar</title>
<link rel="stylesheet" type="text/css" href="assets/jquery-ui.css">
<script src="assets/jquery-3.4.1.min.js" type="text/javascript"></script>
<script src="assets/jquery-ui.js" type="text/javascript"></script>
</head>

<body>
<div id="datepicker"></div>

<script type="text/javascript">
//<![CDATA[
$().ready(function() {
    var myEvents = {};

    // fetch initial events and initialize datepicker with these
    $.ajax({
        'url': 'ajax.php',
        'method': 'get',
        'data': {'y': 2019, 'm': 9}, // @todo pull initial year and month from somewhere, might also depend on what initial month you want to show
        'dataType': 'json',
        'success': function(data) {
            myEvents = data;

            $('#datepicker').datepicker({
                // format date that is returned when clicking a date
                'dateFormat': 'yy-mm-dd',

                // for loading in the events to check if there is an event on that day
                'beforeShowDay': function(d) {
                    return checkMyEvents(d);
                },

                // beforeShow, for when initially loading the calendar; does not seem to trigger on load if its always visible

                'onChangeMonthYear': function(y, m) {
                    fetchMyEvents(y, m);
                },

                'onSelect': function(dateText, instance) {
                    console.log('clicked '+dateText); // debug
                    if (dateText in myEvents) {
                        console.log('corresponds with event ['+myEvents[dateText]['name']+']'); // debug; @todo implement further handling
                    }
                }
            });
        }
    })

    function checkMyEvents(d) {
        var eventDate = d.getFullYear()+'-'+('0'+(d.getMonth()+1)).slice(-2)+'-'+('0'+(d.getDate())).slice(-2); // yyyy-mm-dd
        if (eventDate in myEvents) {
            return [true, '', myEvents[eventDate]['name']];
        } else {
            return [false];
        }
    } // checkMyEvents

    function fetchMyEvents(y, m) {
        console.log('fetching events for '+y+'-'+m); // debug
        $.ajax({
            'url': 'ajax.php',
            'method': 'get',
            'data': {'y': y, 'm': m},
            'dataType': 'json',
            'success': function(data) {
                myEvents = data;
                $('#datepicker').datepicker('refresh'); // update datepicker with new events
            }
        });
    } // fetchMyEvents
});
//]]>
</script>
</body>
</html>


ajax.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
// normally, this data would come from a database
// format it in the way you would use it in jquery

$events = array(
    2019 => array(
        8 => array(
            '2019-08-02' => array('name' => 'august event #1', 'link' => 'date.php?date=2019-08-02'),
            '2019-08-05' => array('name' => 'august event #2', 'link' => 'date.php?date=2019-08-05'),
            '2019-08-10' => array('name' => 'august event #3', 'link' => 'date.php?date=2019-08-10'),
        ),

        9 => array(
            '2019-09-20' => array('name' => 'september event #4', 'link' => 'date.php?date=2019-08-20'),
            '2019-09-22' => array('name' => 'september event #5', 'link' => 'date.php?date=2019-08-22'),
            '2019-09-24' => array('name' => 'september event #6', 'link' => 'date.php?date=2019-08-24'),
        ),

        10 => array(
            '2019-10-10' => array('name' => 'october event #7', 'link' => 'date.php?date=2019-10-10'),
            '2019-10-11' => array('name' => 'october event #8', 'link' => 'date.php?date=2019-10-11'),
            '2019-10-12' => array('name' => 'october event #9', 'link' => 'date.php?date=2019-10-12'),
        ),
    ),
);


$selectedEvents = array();

if (
    isset($_GET['y']) && isset($_GET['m']) &&
    isset($events[$_GET['y']][$_GET['m']])
) {

    $selectedEvents = $events[$_GET['y']][$_GET['m']];
}


header('Content-Type: application/json; charset=UTF-8');
echo json_encode($selectedEvents);
?>
Gewijzigd op 22/09/2019 15:47:15 door Thomas van den Heuvel
 
Levy van der Meijden

Levy van der Meijden

22/09/2019 01:16:23
Quote Anchor link
Echt super bedankt! Ja, dit is veel beter!
 



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.