De extra gegevens die gevraagd kunnen worden bij het aanmelden voor de nieuwsbrief zijn niet verplicht. Om deze toch verplicht te maken kan met javascript bijgesprongen worden.
Door de javascript die standaard wordt aangeroepen bij het klikken op de verstuur-knop af te vangen en te vervangen met eigen javascript kunnen de velden voor verzenden gecontroleerd worden.
Plaats onderstaande javascript in een apart javascript bestand en link dit mee:
function checkSubscribeForm() { // de velden die verplicht zijn, pas aan indien gewenst var fields = ['email', 'lastname', 'company', 'tel']; // we gaan gebruik maken van variabelen en functies uit de standaard javascript // die het cms beschikbaar stelt: js/support.js gValid = true; // geeft aan dat het formulier initieel okay is gAlert = ''; // geeft aan dat er geen foutmelding is for (var i = 0; i < fields.length; i++) { var elem = document.getElementById(fields[i]); // functie uit support.js: als het element elem geen waarde heeft, dan wordt // gValid = false // gAlert = 'Dit is een verplicht veld.' // krijgt het veld de focus // wordt de achtergrond lichtrood MarkElement(elem, elem.value, "Dit veld is verplicht."); } if (!gValid) { // er zijn 1 of meerdere velden niet ingevuld, toon de foutmelding if (gAlert) alert(gAlert); } else { // alles okay, verstuur het formulier register('send'); } return false; } function overruleSubmit() { // haal de verstuur knop op var sendButton = document.getElementsByName("send"); // als knop bestaat, dan... if (sendButton) { // wijzig te aan te roepen functie als men op de knop klikt sendButton[0].onclick = checkSubscribeForm; } } // alleen als we op de aanmeldpagina staan, dan Verstuur-knop afvangen if (/register.cgi/.test(location.href)) { AddToInitArray(overruleSubmit); }