DSGVO Form Checkbox (jQuery)

jQuery-Lösung für DSGVO Formulare

by Kevin Pliester

HTML

<form>
<p><input type="text" name="log" placeholder="Benutzername"></p>
<input type="submit" name="submit" value="Senden">
</form>

JavaScript

(function($) {

  $('form').each(function() {
    var form = $(this);

    // kein suchformular
    if ($(form).hasClass('searchform') !== true) {
    
      var submit = $(form).find('[type=submit]');
      
      // Text auf Wunsch ändern
      var checkboxText = 'Ich bin mit der Speicherung meiner Daten einverstanden.';
      var checkbox = '<input type="checkbox" class="dsvgo-cb" value="0" required="required" />';
      var checkboxLabel = '<label>' + checkbox + checkboxText + '</label>';
      var checkboxHtml = '<div class="devhats-dsvgo">' + checkboxLabel + '</div>';
      
      $(submit).before(checkboxHtml);
      $(submit).prop('disabled', true).css('opacity', '.25');
      
      $(form).find('.dsvgo-cb').on('change', function() {
        if ($(this).is(':checked')) {
          $(submit).prop('disabled', false).css('opacity', '1');
        } else {
          $(submit).prop('disabled', true).css('opacity', '.25');
        }
      });
    }
  });
  
})(jQuery)