【发布时间】:2018-06-05 19:11:46
【问题描述】:
我已经连续 8 个小时在这个问题上苦苦思索,但我无法弄清楚。
环境:我正在开发一个 web 应用程序,它有一个按钮/开关,当单击/选中时会切换一个复选框。当复选框被选中时,它会触发一个调用 PHP 脚本的函数。取消选中时,它会暂停 PHP 脚本。这一切都很好。
ISSUE:我也将复选框配置为在页面加载时处于选中状态,从而在页面加载时自动触发该功能。 但是,现在,当我加载页面时,复选框被选中,但该功能不会自动触发,直到手动切换复选框。
我使用了很多不同的变量和解决方案,但我无法弄清楚。我假设它与“标签”类有关?
我做错了什么?
示例: 你可以忽略 PHP 的东西,因为我在测试时发出了警报。您将选中复选框 onload,但警报不会触发 onload,但会在手动选中复选框时触发。
<script>
var nIntervId;
var onload;
function statusCheck() {
$("#statusloop").load('assets/php/loop.php');
$("#stats").load('assets/php/systembadges.php');
};
$(document).ready(function() {
$(":checkbox").change(function() {
if ($(this).is(':checked')) {
nIntervId = setInterval(statusCheck, 3000);
alert("checked");
} else {
clearInterval(nIntervId);
alert("NOTchecked");
}
});
});
</script>
<body onload="statusCheck()">
<label class="switch" id="buttonStart">
<input type="checkbox">
<span class="slider round"></span>
</label>
<script>
$('#buttonStart :checkbox').attr('checked', 'checked');
</script>
</body>
【问题讨论】:
-
你没有#statusloop和#stats的html实体。 jQuery 静默失败。
标签: javascript jquery html checkbox