今、私は次のようなデータソースを使用しています: (ハードコードされたフィルタリングするパラメータを使用)
$(function () {
$("#scheduler").kendoScheduler({
date: new Date(Date.now()),
startTime: new Date(2013, 5, 13, 9, 0, 0, 0),
height: 800,
timezone: "Etc/UTC",
group: {
resources: ["Rooms"]
},
resources: [
{
name:"Rooms",
title: "Room",
field: "RoomID",
dataSource: {
transport:
{
read: { url: "@Html.Raw(Url.Action("Filter_Rooms", "Room", new{
pPar1= true,
pPar2 = false,
pPar3 = true,
}))", dataType: "json" }
}
}
}
ご覧のとおり、これらのパラメーターはまだハードコードされており、ユーザーがチェックボックスを使用したいときはいつでも変更したいと考えています。
<div class="checkbox">
<label>
<input id="chkPar1" type="checkbox"> Parameter 1
</label>
</div>
<div class="checkbox">
<label>
<input id="chkPar2" type="checkbox"> Parameter 2
</label>
</div>
<a href="#" id="btnFilter" class="btn btn-outline btn-primary btn-lg btn-block">Filter</a>
JavaScriptを使用してボタンがクリックされたかどうかを確認し、チェックボックスパラメーターをグローバル変数に保存し、これらをスケジューラーのトランスポート読み取りで使用することを考えましたが、ここではdocument.getelementbyIdを使用できないようです。
ここで彼らはKendo UI Dynamically Change Datasource String (XML)を提案しましたが、それは私にとってもうまくいかないようです..
var dynamicUrl = "Html.Raw(Url.Action('Filter_Rooms', 'Room', new{pFilter = true, pCapacity = 25,pBeamer = true,pTelevision = false}))', dataType: 'json'"
var scheduler = $("#scheduler").data("kendoScheduler");
scheduler.dataSource.transport.options.read.url = dynamicUrl;
では、これらのパラメーターを動的に変更したり、トランスポート読み取り URL 全体を更新したりするにはどうすればよいでしょうか?
よろしく