Как использовать getselected функцию Kalendae - PullRequest
0 голосов
/ 05 февраля 2019

Очень новичок, я просто хочу узнать, как я могу получить значения выбранных дат в календаре Kalendae, используя функцию getSelected ().Мне нужно сохранить значения в переменной после их выбора.

Я использую несколько выберите календарь, и я пытаюсь записать выбранные даты, но не могу получитьзначения, я пытался поместить его в переменную, но я думаю, что я делаю это неправильно.

<html>
   <head>
   <title>Date Select</title>
   <link rel="stylesheet" href="build/kalendae.css" type="text/css" charset="utf-8">
   <script src="build/kalendae.standalone.js" type="text/javascript" charset="utf-8">
   <style type="text/css" media="screen">
   .kalendae .k-days span.closed {
    background:red;
    }
    </style>
    </head>
    <body onload="getDate()">
       <center>
       <h4>Pick a date.</h4>
       <div id="myDiv" class="auto-kal" data-kal="months:1, mode:'multiple'"></div> 
      <script>function getDate(){
               var k = new Kalendae('myDiv');
                   k.subscribe('change', function (date) {
                 console.log(date, this.getSelected());
     });
      }<script>
   </center>
  </body>
</html>

Я ожидаю получить значения, такие как:

  • 2/5/2019
  • 2/7/2019
  • 2/9/ 2019

После выбора, но я даже не получил никакого результата.

1 Ответ

0 голосов
/ 08 февраля 2019

Для меня этот код делает то, что вы хотите.У вас есть несколько проблем.Я пытался объяснить это в комментариях:

<html>

<head>
    <title>Date Select</title>
    <link rel="stylesheet" href="build/kalendae.css" type="text/css" charset="utf-8">
    <script src="build/kalendae.standalone.js" type="text/javascript" charset="utf-8">
</script> //Here you have to add closing script Tag
    <style type="text/css" media="screen">
        .kalendae .k-days span.closed {
            background: red;
        }
    </style>
</head>

<body>
    <center>
        <h4>Pick a date.</h4>
<!-- If you use class="auto-kal" the kalendae library generates a new Kalendae 
that does not have anything to do with your generated Kalendae object below. So
you have to  add a div with the ID myDiv that you are using in new 
Kalendae('myDiv'). If you want to understand this you can add "<div class="auto-
kal" data-kal="months:1, mode:'multiple'"> </div> " and you see two calendars 
-->

        <div id="myDiv" class="myDiv"></div>
        <script>

//You doesn't have a Div HTML-Tag with myDiv - Id so 
//this Kalendae was never displayed. 
//Especially your function getDate() was never called. So this code
//never runs.
        var k = new Kalendae('myDiv', {
            months:1,
            mode:'single',
            selected:Kalendae.moment().subtract({M:1})
        });

        k.subscribe('change', function (date) {
                        console.log(date, this.getSelected());
                    });

        </script>
    </center>
</body>

</html>

Надеюсь, это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...