JSFiddle - React, Tailwind, and code Playground
by der_robert
HTML
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-switch/3.0.1/css/bootstrap3/bootstrap-switch.css">
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/bootstrap-switch/3.0.1/js/bootstrap-switch.js"></script>
<div class="make-switch">
<input type="checkbox" name="cb1" id="cb1" data-on-text="An 1" data-off-text="Aus 1" value="vcb1" checked="true" data-switch-name="cb1" data-switchvalue=true class="probeProbe" />
</div>
<div class="make-switch">
<input type="checkbox" name="cb2" id="cb2" data-on-text="An 2" data-off-text="Aus 2" value="vcb2" checked="true" data-switch-name="cb2" data-switchvalue="false" class="probeProbe" />
</div>
<div class="make-switch">
<input type="checkbox" name="cb3" id="cb3" data-on-text="An 3" data-off-text="Aus 3" value="vcb3" checked="true" data-switch-name="cb3" data-switchvalue="true" class="probeProbe" />
</div>
<div class="make-switch">
<input type="checkbox" name="cb4" id="cb4" data-on-text="An 4" data-off-text="Aus 4" value="vcb4" checked="true" data-switch-name="cb4" data-switchvalue="false" class="probeProbe" />
</div>
JavaScript
$('[id^="cb"]').each(function(){
var id = $(this).attr("id");
$('#'+id).bootstrapSwitch('state', $(this).data("switchvalue"));
});
$('.probeProbe').on('switchChange.bootstrapSwitch', function (event, state) {
var checkbox_status = state;
var switchname = $(this).data("switch-name");
console.log(switchname+" -> "+checkbox_status);
$.ajax({
url: 'libs/hier_irgendeine_php_datei.php',
type: "POST",
dataType: "json",
data: {checkbox:switchname,checkbox_status:checkbox_status},
success: function(data) {
/*
* in der PHP datei dann am Ende sowas:
$status = $_POST['checkbox_status'];
// Update DB
$return = array("status"=>"ok"); // alternativ, statt ok, fail oder fehler um im Ajax-Block den eles zweig anzusprechen
echo json_decode($return); weil am ende von $.ajax "JSON" steht und weil
*/
if(data.status == 'ok'){
//alert("alles ok");
}else{
//alert("Fehler");
}
},
error: function(data) {
//alert("Fehler 2");
}
},"JSON");
$
});