• element ui 下拉框 选择月份和天数


    一、背景

    目前做的管理系统项目,期望实现功能为:设置出账周期和出账日,考虑使用element ui下拉框实现功能

    二、所用技术

    vue2+element ui

    三、实现效果

    四、具体代码

    1. <script>
    2. export default {
    3. name: 'print-pop',
    4. props: {
    5. ids: {
    6. type: Array,
    7. default: () => {
    8. return []
    9. }
    10. }
    11. },
    12. data() {
    13. return {
    14. //周期/月份
    15. month: [],
    16. //天数/日
    17. days: [],
    18. form: {
    19. recentMonth: '',
    20. day: ''
    21. }
    22. }
    23. },
    24. created() {
    25. this.init()
    26. },
    27. methods: {
    28. init() {
    29. let myData = new Date() //获取当前日期
    30. let month = myData.getMonth() + 1 //获取当前月份
    31. let day = myData.getDate() //获取当天日期
    32. this.initSelectMonth(month) // 调用initSelectMonth方法,初始化月份选项
    33. this.form.recentMonth = month // 将月份设置为当前月份
    34. this.monthChange(month) //生成对应月份的天数选项
    35. this.form.day = day // 将天数设置为当天的日期
    36. },
    37. //初始化月份选项
    38. initSelectMonth(month) {
    39. this.month = []
    40. for (let i = 1; i <= 12; i++) {
    41. this.month.push({ value: i, label: i })
    42. }
    43. },
    44. //生成对应月份的天数选项
    45. monthChange(val) {
    46. const month = parseInt(val, 10)// 将传入的月份转换为整数
    47. const daysInMonth = new Date(new Date().getFullYear(), month, 0).getDate()// 获取对应月份的天数
    48. const days = []
    49. for (let i = 1; i <= daysInMonth; i++) {
    50. days.push({ value: i, label: i })
    51. }
    52. this.form.day = ''// 清空天数表单项
    53. this.days = days// 更新天数选项
    54. },
    55. //确定按钮
    56. onSubmit() {
    57. this.$emit('close')//用于向父组件发信息,关闭弹窗的
    58. this.getSaveDate()
    59. },
    60. //此处为点击确定按钮发请求
    61. getSaveDate() {
    62. console.log('点击了确认按钮')
    63. },
    64. close(param) {
    65. this.$emit('close', param)
    66. }
    67. }
    68. }
    69. script>
    70. <style lang="scss" scoped>
    71. .print-pop {
    72. width: fit-content;
    73. }
    74. .setting {
    75. margin-bottom: 10px;
    76. }
    77. .btn-container {
    78. display: flex;
    79. justify-content: flex-end;
    80. margin-top: 50px;
    81. }
    82. style>

  • 相关阅读:
    Java实验室基础信息管理系统
    Docker-Compose进行容器编排的简单使用
    PYQT中线程使用Demo
    python控制负数以16进制整型格式输出
    C# 设计保存文件
    python和java类的编写(属性私有化,方法公开化)
    2023.11.14 信息学日志
    制作原创音乐app软件FL Studio21.2中文版
    MyBatis Generator 代码生成工具
    【毕业设计】python+大数据构建疫情可视化分析系统
  • 原文地址:https://blog.csdn.net/weixin_71403100/article/details/133895790