获取带有国家法定假日谷歌日历列表的JSON

时间:2015-10-08 13:57:43

标签: javascript google-api google-calendar-api

如何使用带有javascript或jquery的 Google日历获取所选国家/地区的假日列表?

有可能吗?有什么建议吗?

我正在使用Google Calendar API V3并使用 javascript 。 我在android中找到了一些例子,但我对android一无所知。

1 个答案:

答案 0 :(得分:7)

这是一个简单的示例,其中包含少数public holidays calendars

$("#selectCountry").change(function(e) {
  $("#output").html("Loading...");
  var country = $("#selectCountry").val();
  var calendarUrl = 'https://www.googleapis.com/calendar/v3/calendars/en.' + country 
                  + '%23holiday%40group.v.calendar.google.com/events?key=<yourAPIKey>';

  $.getJSON(calendarUrl)
    .success(function(data) {
    	console.log(data);
      $("#output").empty();
      for (item in data.items) {
        $("#output").append(
          "<hr><h3>" + data.items[item].summary + "<h3>" +
          "<h4>" + data.items[item].start.date + "<h4>"
        );
      }
    })
    .error(function(error) {
      $("#output").html("An error occurred.");
    })
});
$("#selectCountry").trigger("change");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<body>
  <select id="selectCountry">
    <option value="usa">USA</option>
    <option value="uk">UK</option>
    <option value="bm">Bermuda</option>
    <option value="swedish">Sweden</option>
  </select>
  <pre id="output"></pre>
  <script type="text/javascript">
  </script>
</body>

此策略根据下拉菜单中选择的选项构建日历的URL。它解析原始JSON响应中的假日名称和信息,该响应包含在data回调函数的$.getJSON参数中。