1

私は Kendo UI Web で作業してきました。Calendar ウィジェットを見て、このような構文があると、${ data.value }その構文が値をエコーし​​ていると確信しています。そして、その構文は私にとって新しいものであり、グーグルで調べたときにそれに関するドキュメントを見つけることができないようです. 誰かが私を正しい方向に向けることができますか? そして、このようにカレンダーウィジェットの日付オプションを入力できますか

$.ajax({
  url: getHolidaysURL,
  success: function(data) {
    var json = JSON.parse(data);

    var holidayDates = new Array();

    for(var i = 0; i < json.length; i++) {
      var dateSplit = json[i].date;

      holidayDates.push(new Date(dateSplit[0], dateSplit[1], dateSplit[2]));
    }

    $('#holiday-calendar').data('kendoCalendar').options.dates = holidayDates;
  }
});
4

2 に答える 2

1

${ }は#: #と同じです。#: #に関する詳細情報は次のとおりです。

日付に関しては、ウィジェットの初期化後に設定されたオプションが考慮されないことを恐れています。ウィジェットを破棄し、必要なオプションを使用して成功のコールバック内で再作成してみませんか?

于 2012-12-24T07:22:47.810 に答える
0

@Pechka が言ったことに加えて${}、を破棄して再作成する代わりに、次のwidgetことを試してみてください。

var cal = $('#holiday-calendar').data('kendoCalendar');
cal.options.dates = holidayDates;
cal.navigateToPast();
cal.navigateToFuture();

これは実際の解決策ではありませんが、カレンダーを強制するためのトリックでrefreshあり、これまでのところ機能しています。それが行うことは、過去に移動し、次に のcalendar強制で未来に移動することredrawですcalendar

ブラウザの速度とコンピュータの画面によっては、実際には何らかのちらつきが発生する可能性がありますがウィジェットを破棄して再作成するよりは少なくなります。

于 2012-12-24T10:46:49.340 に答える