Hoe kan ik het resultaat van een javascript loop in een javascript bestand laden?
Nu staat het volgende "hardcoded" in mijn javascript bestand:
Code (php)
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
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
var props = [{
title : 'Bouwbedrijf van de Water',
image : 'bbvdw.jpg',
address : 'Polyanderweg 2, 3218 XT Heenvliet',
position : {
lat : 51.863010, // 51.8424513,
lng : 4.235398 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Bedrijfsnaam',
image : 'snm.jpg',
address : 'goudenregeplein 1, 1234 AB, Spijkenisse',
position : {
lat : 51.842451, // 51.8424513,
lng : 4.332894 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Taxi Overgaauw',
image : 'taxi.jpg',
address : '3214 LJ Zuidland',
position : {
lat : 51.822302, // 51.8424513,
lng : 4.247739 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Moree & Vermeer B.V.',
image : 'moree.jpg',
address : 'Ring 2 3212LS Simonshaven',
position : {
lat : 51.823013, // 51.8424513,
lng : 4.290310 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Molengraaf Makelaardij',
image : 'molengraaf.jpg',
address : 'Mr P.J. Oudweg 56 3214 XN Zuidland',
position : {
lat : 51.821451, // 51.8424513,
lng : 4.259176 // 4.3307054
},
markerIcon : "marker-green.png"
},
{
title : 'P. Vis B.V.',
image : 'pvisbv.jpg',
address : 'Driendijk 1a 3218 LB Heenvliet',
position : {
lat : 51.857122, // 51.8418945,
lng : 4.236260 // 4.3337659
},
markerIcon : "marker-green.png"
}];
title : 'Bouwbedrijf van de Water',
image : 'bbvdw.jpg',
address : 'Polyanderweg 2, 3218 XT Heenvliet',
position : {
lat : 51.863010, // 51.8424513,
lng : 4.235398 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Bedrijfsnaam',
image : 'snm.jpg',
address : 'goudenregeplein 1, 1234 AB, Spijkenisse',
position : {
lat : 51.842451, // 51.8424513,
lng : 4.332894 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Taxi Overgaauw',
image : 'taxi.jpg',
address : '3214 LJ Zuidland',
position : {
lat : 51.822302, // 51.8424513,
lng : 4.247739 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Moree & Vermeer B.V.',
image : 'moree.jpg',
address : 'Ring 2 3212LS Simonshaven',
position : {
lat : 51.823013, // 51.8424513,
lng : 4.290310 // 4.3307054
},
markerIcon : "marker-green.png"
},{
title : 'Molengraaf Makelaardij',
image : 'molengraaf.jpg',
address : 'Mr P.J. Oudweg 56 3214 XN Zuidland',
position : {
lat : 51.821451, // 51.8424513,
lng : 4.259176 // 4.3307054
},
markerIcon : "marker-green.png"
},
{
title : 'P. Vis B.V.',
image : 'pvisbv.jpg',
address : 'Driendijk 1a 3218 LB Heenvliet',
position : {
lat : 51.857122, // 51.8418945,
lng : 4.236260 // 4.3337659
},
markerIcon : "marker-green.png"
}];
Dit wil ik dynamisch maken door een json object te loopen en het resultaat te returnen zodat ik nieuwe markers kan toevoegen via mijn cms.
Ik heb de volgende loop toegevoegd:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
$.each( bedrijven, function( key, value ) {
// console.log( key + ": " + value.plaats );
bedrijvenlijst += `{
title : '${value.title}',
image : 'bbvdw.jpg',
address : '${value.straat} ${value.plaats}',
position : {
lat : 51.863010, // 51.8424513,
lng : 4.235398 // 4.3307054
},
markerIcon : 'marker-green.png'
},`;
});
// console.log( key + ": " + value.plaats );
bedrijvenlijst += `{
title : '${value.title}',
image : 'bbvdw.jpg',
address : '${value.straat} ${value.plaats}',
position : {
lat : 51.863010, // 51.8424513,
lng : 4.235398 // 4.3307054
},
markerIcon : 'marker-green.png'
},`;
});
Hoe kan ik binnen var props het resultaat laden van deze loop zodat uiteindelijk wanneer de browser het bestand uitvoerd, de lijst uit de loop wordt gelezen? Kortom, hoe kan ik bedrijvenlijst laden binnen var props?
Ik heb het volgende al geprobeerd:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
var props = [
document.writeIn(bedrijvenlijst);
{
title : 'P. Vis B.V.',
image : 'pvisbv.jpg',
address : 'Driendijk 1a 3218 LB Heenvliet',
position : {
lat : 51.857122, // 51.8418945,
lng : 4.236260 // 4.3337659
},
markerIcon : "marker-green.png"
}];
document.writeIn(bedrijvenlijst);
{
title : 'P. Vis B.V.',
image : 'pvisbv.jpg',
address : 'Driendijk 1a 3218 LB Heenvliet',
position : {
lat : 51.857122, // 51.8418945,
lng : 4.236260 // 4.3337659
},
markerIcon : "marker-green.png"
}];
Maar dit geeft een error op document.writeIn(bedrijvenlijst); met een unexpected token ;
Dit kan toch nooit zo moeilijk zijn?
Gewijzigd op 25/10/2017 12:21:56 door Ben van Velzen
De l van L dus.
Daarnaast kom je misschien in de knoop met het volgende: de bedrijvenlijst is één grote string, geen array van objecten. Als je dit als JSON wilt gebruiken zul je dit eerst moeten parsen als JSON denk ik. En je zult iets moeten verzinnen voor die komma aan het einde, mogelijk loopt dat ook mis. Mogelijk werkt alles beter als je direct objecten toevoegt aan een groeiend array? En omdat dit JSON betreft moeten er wellicht om het geheel ook nog { accolades }. Ik denk dat je als je de opbouw iets anders aanpakt e.e.a. eenvoudiger wordt.