dimanche 11 janvier 2015

included if both true and false in slider-labeled checkbox

I have 2 slider-labeled checkboxes:



<div class="slider" style="background: rgb(104, 117, 139);">
<input type="checkbox" value="None" id="sliderSilentMode" name="check">
<label for="sliderSilentMode"></label>
</div>
<div class="slider" style="background: rgb(4, 160, 213);">
<input type="checkbox" value="None" id="sliderGuestCode" name="check">
<label for="sliderGuestCode"></label>
</div>


I'm checking if checkbox is checked first and then what div is it (by id of checkbox)



$(document).on('click','.slider',function(){
if ($(this).find('input').prop('checked')==false)
{
$(this).css('background','#04A0D5');
if ($(this).find('#sliderGuestCode').html()!=undefined)
{
console.log('false Guest');
data={hash:13,value:0};
$.ajax({
type: "POST",
url: "../updateGuestCodeNotification.php",
data: data,
success: function (data, textStatus, jqXHR)
{
$(this).find('input').prop('checked',true);
}
});
}
else if ($(this).find('#sliderSilentMode').html()!=undefined)
{
console.log('false Silent');
$('#startTimeSilentModeDiv').css('color','#D5D5D5');
$('#finishTimeSilentModeDiv').css('color','#D5D5D5');
data={hash:13,value:0};
$.ajax({
type: "POST",
url: "../updateActivityOfSilentMode.php",
data: data,
success: function (data, textStatus, jqXHR)
{
$(this).find('input').prop('checked',true);
}
});
}
}
else
{
$(this).css('background','#68758B');
if ($(this).find('#sliderGuestCode').html()!=undefined)
{
console.log('true Guest');
data={hash:13,value:1};
$.ajax({
type: "POST",
url: "../updateGuestCodeNotification.php",
data: data,
success: function (data, textStatus, jqXHR)
{
$(this).find('input').prop('checked',false);
}
});
}
else if ($(this).find('#sliderSilentMode').html()!=undefined)
{
console.log('true Silent');
$('#startTimeSilentModeDiv').css('color','#D5D5D5');
$('#finishTimeSilentModeDiv').css('color','#D5D5D5');
data={hash:13,value:1};
$.ajax({
type: "POST",
url: "../updateActivityOfSilentMode.php",
data: data,
success: function (data, textStatus, jqXHR)
{
$(this).find('input').prop('checked',false);
}
});
}
}
});


For some reason it detects what div is it right, but takes both true and false according to the console. Here is fiddle





Aucun commentaire:

Enregistrer un commentaire