Regina Schaukrug: Bei Klick auf checkbox Update ausführen und Text durchstreichen

Beitrag lesen

$(document).ready(function() { 
	
	$( '.todo' ).click( function() {

    var thisCheckbox = $( this );

    thisCheckbox.prop( 'disabled', true );

    xhttp.open( 'POST', 'changeStatus.php', true );
    xhttp.setRequestHeader( 'Content-type', 'application/x-www-form-urlencoded' );
    xhttp.onreadystatechange = function() {

      if ( this.readyState == 4 && this.status == 200 ) {

   		  if( this.responseText == 'done' ) {
		  	  thisCheckbox.next('span').addClass( 'done');
		    } else {
  		    thisCheckbox.next( 'span' ).removeClass( 'done' );
        }
        thisCheckbox.prop( 'disabled', false );
      }

      xhttp.send( 'val=' + thisCheckbox.val() );
    }
  }); 
}); 

Da ich jquery vermeide können hier Syntaxfehler drin stehen.

Das PHP-Skript "changeStatus.php" schreibt in die Datenbank und liefert nur dann(!) und nur(!) "done" zurück, wenn der Eintrag auf "erledigt" gesetzt wurde (oder es schon, z.B. durch eine Aktion in einer anderen Sitzung war). Ob es das soll steht in $_POST['val']. changeStatus.php muss die Authorisierung prüfen!