Ik zou graag van onderstaande php script een javascript script willen maken. Heb weinig kennis van javascript. vandaar even hier de vraag. de reden dat ik deze in javascript wil hebben is dat ik vervolgens een ajax loop wil creeren.
ja de bedoeling is dus dat ik een ajax loop creeer die elke id inleest. zo heb ik een id met "titel' 'titel2', 'titel3' etc..
vervolgens word steeds de inhoud van het desbreffende element per id via ajax doorgestuurd naar een php bestand die ze weer op de juiste manier kan opslaan in de database.
Maar ik weet niet of dit de juiste weg is. ik heb ook iets gelezen dat ik alle id's eerst in een array zou kunnen zetten. Maar ik weet niet of dit kan, aangezien ik nooit welke id's er zoal voorkomen op de pagina. Het zouden er 40 kunnen zijn, maar ook 55 etc. en zou ook pas kunnen beginnen met bijv. titel9. hierbij kan ook bijv. titel15 ontbreken. Is er een mogelijkheid om de pagina te scannen op alle id's beginnende met "titel" en deze in een array te plaatsen? hierbij moet ik wel vermelden dat het hoogste volgnummer wel bekend is. De lengte van de loop loopt dan t/m dit hoogste nummer.
Hoe bedoel je precies met jouw opmerking "AJAX-request uitvoeren, en die doorlopen".
[size=xsmall]Toevoeging op 28/09/2023 10:30:26:[/size]
de loop is dus nodig om het toegevoegde nummer van een id in te lezen. in php heb ik dus in de loop het opeenlopende nummer toegevoegd aan een variable zie:
${"titel$i"} = "titel1";
Maar hoe dit in javascript te realiseren? Of is er een totaal andere oplossing mogelijk?
oke. maar hoe zou ik in javascript dat de pagina moeten scannen op alle i'd beginnende met "titel"? En hoe kan ik deze id's dan precies in een array krijgen? de array is namelijk altijd weer anders vandaar..
Een voorbeeldje met de jQuery-library, wat ik vaak gebruik.
<h1 id="titel1">Dit is titel 1</h1>
<h2 id="titel2">Dit is titel 2</h2>
<p id="titel3">Dit is titel 3</p>
<div id="geenTitel">Dit is geen titel</div>
<script>
$(document).ready(function() {
// Maak een lege array voor de gevonden ID's
var titelIds = [];
// Zoek alle ID's die beginnen met "titel"
$('[id^="titel"]').each(function() {
// Voeg het ID toe aan de array
titelIds.push(this.id);
});
// De titelIds-array bevat alle overeenkomende ID's, zet deze in een debug console.log
console.log(titelIds);
});
</script>
titelIds kan je vervolgens verpakken tot een 'pakketje' die je aan AJAX kan voeren:
hoi arien. ah bedankt. ga ermee aan de slag. kom er wel op terug als ik er niet aan uit kom.
[size=xsmall]Toevoeging op 28/09/2023 11:17:28:[/size]
hoi arien. ik krijg niet te zien wat de inhoud van het pakketje is. via console.log(titelIds); zouden deze toch weergegeven moeten worden? of mis ik iets?