问题:如何获取上月、本月、下月的按钮日期并隐藏非本月按钮。
实现效果:
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- import CSS -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
</head>
<body>
<div id="app">
<el-calendar v-model='valueData'>
<template slot="dateCell" slot-scope="{date, data}">
<div class='date_d' style="padding:5px;text:center">{{ data.day.split('-').slice(1).join('-') }}</div>
<div style="padding:5px 0;">
<button type="button" class="el-button el-button--mini" style='border-radius: 30px'>
下载
</button>
</div>
</template>
</el-calendar>
</div>
</body>
<!-- import Vue before Element -->
<script src="https://unpkg.com/vue@2/dist/vue.js"></script>
<!-- import JavaScript -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script>
new Vue().$mount('#app');
let prevBtn = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(1)');
prevBtn.addEventListener('click', () => {
alert("上月日期:");
})
</script>
</html>
以下是一个简单的 HTML 文件,该文件包含一个按钮和一个显示日期的段落。当用户点击按钮时,JavaScript 代码将获取上一个月和下一个月的日期,并将其显示在段落中。请注意,以下代码并不是最终的代码,你可能需要进行一些修改才能使其适应你的应用场景。
<html>
<head>
<script>
function showDates() {
var calendar = new Date();
calendar.setMonth(calendar.getMonth() - 1); // 设置为上一个月
var lastMonthDate = calendar.toLocaleDateString(); // 获取上一个月的日期
calendar = new Date();
calendar.setMonth(calendar.getMonth() + 1); // 设置为下一个月
var nextMonthDate = calendar.toLocaleDateString(); // 获取下一个月的日期
var display = document.getElementById("display");
display.innerHTML = "上一个月的日期:" + lastMonthDate + "<br>下一个月的日期:" + nextMonthDate;
}
</script>
</head>
<body>
<button onclick="showDates()">点击这里获取上一个月和下一个月的日期</button>
<p id="display"></p>
</body>
</html>
上述代码使用 JavaScript 中的 Date 对象和 toLocaleDateString() 方法来获取日期。具体来说,在 showDates() 函数中,先创建一个 Date 对象表示当前时间,然后使用 setMonth() 方法设置其月份,以获取上下两个月的日期。最后,使用 innerHTML 方法将日期显示在页面上。