我有Toggle Switch按钮,当它从On转到Off时显示确认警报(“您确定,您要关闭状态!”),并且当它从Off变为On时,我不希望它切换显示确认警报。
我做了如下操作,但是当它从“关闭”变为“打开”时,它将再次显示警报:)
任何人都可以帮助我或为我指明正确的方向!
在此先感谢:)
JavaScript :
$(document).ready(function() {
$('.switchOnOff').click(function() {
var Id = $(this).data('id');
var checkStatus = $(this).find('input:checkbox').is(':checked') ? 'On' : 'Off';
if (checkStatus == "Off") {
if (confirm("Are you sure , you want to trun off status!")) {
$.ajax({
type: "POST",
url: '@Url.Action("UpdateNtf", "Account")',
data: {
id: Id,
status: checkStatus
},
dataType: 'json',
success: function(result) {
if (result) {
console.log("Ok");
} else {
console.log("error");
}
},
error: function() {
console.log('something went wrong - debug it!');
}
})
} else {
return false;
}
}
});
});
查看:
@if (rma.NTFonoff == "On")
{
<input type="checkbox" class="switch-input" checked>
<span data-on="On" data-off="Off" class="switch-label"></span>
}
else
{
<input type="checkbox" class="switch-input">
<span data-off="Off" data-on="On" class="switch-label"></span>
}
答案 0 :(得分:2)
这是一个示例代码,可以满足您的要求。我不会编辑您的代码,因为其中还有很多与您的问题无关的混乱情况。
const button = document.getElementById('button')
button.addEventListener('click', function () {
if (this.innerText == 'On') {
if (confirm('Are you sure?')) {
this.innerText = 'Off'
}
} else {
this.innerText = 'On'
}
})
<button id="button">Off</button>