Javascript 如何在每天一段时间内禁用HTML提交按钮
我想每天禁用一个按钮一段时间 例如:比如说,html提交按钮每天在 上午11点和下午4点Javascript 如何在每天一段时间内禁用HTML提交按钮,javascript,jquery,html,Javascript,Jquery,Html,我想每天禁用一个按钮一段时间 例如:比如说,html提交按钮每天在 上午11点和下午4点 函数checkButton(){ 变量日期=新日期(); var hours=date.getHours(); var minutes=date.getMinutes(); //上午11:00隐藏按钮 如果(小时==11和分钟==00){ $(“#btn”).hide(); } //下午4:00显示按钮 如果(小时==16和分钟==00){ $(“#btn”).show(); } } 您不应该检查是否相
函数checkButton(){
变量日期=新日期();
var hours=date.getHours();
var minutes=date.getMinutes();
//上午11:00隐藏按钮
如果(小时==11和分钟==00){
$(“#btn”).hide();
}
//下午4:00显示按钮
如果(小时==16和分钟==00){
$(“#btn”).show();
}
}
您不应该检查是否相等,而应该使用<?php
$hour=date('H');
if(($hour <=11) || ($hour >=16)) {?>
<script type="text/javascript">
$("#button").show();
</script>
<?php }
?>
$(“#按钮”).show();
您当前只需检查时间点,但您的描述假设您希望检查时间范围。因此,请尝试以下方法:
if(hour >= 11 && < 16) { $('#btn').hide() }
if(hour>=11&&<16){$('#btn').hide()}
要查看上午11:00到下午4:00之间的时间:
let min = hours*60 + minutes;
if(min > 11*60 && min < 16*60) {
$("#btn").hide();
}else {
$("#btn").show();
}
我的不带Jquery的解决方案:
点击我
window.onload=函数(){
设btn=document.getElementById('btn');
函数checkButton(){
让日期=新日期();
让hours=date.getHours();
让minutes=date.getMinutes();
最小值=小时*60+分钟;
如果(最小值>11*60&&min<16*60){
//$(“#btn”).hide();
btn.style.display='none';
console.log('btn hide');
}否则{
//$(“#btn”).show();
btn.style.display='block';
console.log('btn show');
}
}
设置间隔(检查按钮,6000);
}
试验
addEventListener(“加载”,函数(){
var currentTime=新日期();
var hours=currentTime.getHours();
var newButton=document.getElementById(“btn”);
如果(小时数>=11&&hours检查按钮(e){e.preventDefault();}@ampedo能否请您粘贴完整的代码片段Hello@LP Devs,使用上述脚本尝试但不起作用。能否请您粘贴完整测试的代码片段。@Zanxzan您应该将脚本放在正文末尾以加载fasterHello@Stephan,使用脚本尝试但不起作用Hello@LP Devs,上述代码按照我的要求工作有什么改进的建议吗?为了更快地加载,你应该把脚本放在正文的末尾。
setInterval(checkButton, 60000);
<!DOCTYPE html>
<html>
<head></head>
<body>
<button id="btn">Click me</button>
<script>
window.onload = function() {
let btn = document.getElementById('btn');
function checkButton(){
let date = new Date();
let hours = date.getHours();
let minutes = date.getMinutes();
let min = hours*60 + minutes;
if(min > 11*60 && min < 16*60) {
//$("#btn").hide();
btn.style.display = 'none';
console.log('btn hide');
}else {
//$("#btn").show();
btn.style.display = 'block';
console.log('btn show');
}
}
setInterval(checkButton, 6000);
}
</script>
</body>
</html>