Skip to content

Instantly share code, notes, and snippets.

@nischolas
Created June 19, 2019 10:58
Show Gist options
  • Save nischolas/d3e0a8114757c0d03dd46b67d0e473c8 to your computer and use it in GitHub Desktop.
Save nischolas/d3e0a8114757c0d03dd46b67d0e473c8 to your computer and use it in GitHub Desktop.
<form id="nl2go_form" method="POST">
<select name="gender">
<option value="f">Frau</option>
<option value="m">Herr</option>
</select><br /><br />
<input id="vorname" name="first_name" type="text" placeholder="Vorname" required /> <input id="nachname" name="last_name" type="text" placeholder="Nachname" required /><br />
<input id="email" name="email" type="email" placeholder="" disabled required /><br />
<label for="datenschutz"></label><input id="datenschutz" type="checkbox" name="datenschutz" required value=""> Ja, ich möchte über Produkte und Angebote informiert per E-Mail werden. Ich stimme hiermit den <a href="#">Bedingungen dieser
Werbeeinwilligung</a> zu.<br /><br />
<br />
<input method="post" value="Registrieren" type="Submit" />
</form>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script type="text/javascript">
function findGetParameter(paramName) {
var result = null,
tmp = [];
var items = location.search.substr(1).split("&");
for (var i = 0; i < items.length; i++) {
tmp = items[i].split("=");
if (tmp[0] === paramName) {
result = decodeURIComponent(tmp[1])
};
}
return result;
}
// email in feld einfügen
document.getElementById("email").value = findGetParameter("email");
//Formular initialisieren
! function(e, t, n, c, r, a, i) {
e.Newsletter2GoTrackingObject = r, e[r] = e[r] || function() {
(e[r].q = e[r].q || []).push(arguments)
}, e[r].l = 1 * new Date, a = t.createElement(n), i = t.getElementsByTagName(n)[0], a.async = 1, a.src = c, i.parentNode.insertBefore(a, i)
}(window, document, "script", "https://static.newsletter2go.com/utils.js", "n2g");
n2g('create', '4qtbzm8j-8us5tutj-59c');
//Formular nach Abschicken auswerten
$('#nl2go_form').on('submit', function(e) {
e.preventDefault();
console.log(recipient);
//Felder als JSON speichern
var recipient = $(this).serializeArray().map(function(x) {
this[x.name] = x.value;
return this;
}.bind({}))[0];
//Daten an Newsletter2Go senden
n2g(
'subscribe:send', {
recipient: recipient
},
function(data) {
if (data.status == 201) {
//Ausgabe der Statusmeldung anstelle des Formulars
$('#nl2go_form').html("<h2>Anmeldung erfolgreich! Vielen Dank.</h2>");
} else if (data.status == 200) {
//Ausgabe der Statusmeldung anstelle des Formulars
$('#nl2go_form').html("<h2>Sie sind bereits angemeldet! Vielen Dank!</h2>");
} else {
//Ausgabe der Statusmeldung anstelle des Formulars
$('#nl2go_form').html("<h2>Es ist ein Fehler aufgetreten! Bitte versuchen Sie es nochmal. Vielen Dank!</h2>");
}
},
function(data) {
//Ausgabe der Statusmeldung anstelle des Formulars
$('#nl2go_form').html("<h2>Es ist ein Fehler aufgetreten! Bitte versuchen Sie es nochmal. Vielen Dank!</h2>");
}
);
});
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment