1

Kendo tabstrip は ContentUrl を HTTP GET 経由で ajax としてロードするコンテンツを受け入れますが、このコンテンツを POST 経由でロードする方法はありますか?

剣道タブストリップは、コンテンツをロードするためにkendo.data.Datasourceを受け入れます

http://dojo.telerik.com/EmECoyを参照してください。

$("#tabstrip").kendoTabStrip({
    dataTextField: "Name",
    dataContentUrlField: "ContentUrl",
    dataSource: [
      { Name: "Tab1", ContentUrl: "http://demos.telerik.com/kendo-ui/content/web/tabstrip/ajax/ajaxContent1.html" },
      { Name: "Tab2", ContentUrl: "http://demos.telerik.com/kendo-ui/content/web/tabstrip/ajax/ajaxContent2.html" }
    ]
});

kendo.data.DataSourceには「POST」の読み取りタイプがありますが、このメカニズムをタブストリップのコンテンツ読み込みにプラグインできるかどうかを把握できません..または、これを取得するための AJAX GET 呼び出しに固執していますか?

4

1 に答える 1

-1

コンテンツをロードするための組み込みのタブメカニズムをバイパスする私の解決策は次のとおりです: http://dojo.telerik.com/omOre

タブ定義の空のコンテンツ URL:

jQuery(function(){jQuery("#tabstrip").kendoTabStrip({"select":onselect,"activate":onactivate,"contentLoad":onContentLoad,"animation":false,"contentUrls":["","","",""]});});

//Track our content
var tabcontent = [{"contentloaded":true},{"url":"http://demos.telerik.com/kendo-ui/content/web/tabstrip/ajax/ajaxContent1.html"},{"url":"http://demos.telerik.com/kendo-ui/content/web/tabstrip/ajax/ajaxContent2.html"},{"url":"http://demos.telerik.com/kendo-ui/content/web/tabstrip/ajax/ajaxContent3.html"} ];

「select」イベントを実装する - AJAX 経由でタブをロードする必要があるかどうかを判断する (投稿) - タブが既にロードされているかどうかを追跡する

//When selected, if ajax and not not loaded - load the content
  function onselect(e) {
      console.log("select");            
        var index = $(e.item).index();
        var taburl =    tabcontent[index].url;
        var contentloaded = tabcontent[index].contentloaded;

          if(taburl !== "" && contentloaded !== true)
          {
              //get reference to the TabStrip widget
            var ts = $("#tabstrip").data("kendoTabStrip");

            //get the tab content
            var item = ts.contentElement(index);                 

            $.ajax({
              type: "get",//simple change! "post",
              url: taburl,
              success: function (response) {                         
                $(item).html(response);
                tabcontent[index].contentloaded = true;
                console.log("Tab Index: " + index + ", Url: " + taburl + " [[ajax success]]");
              }
            });
              }
          }
于 2016-08-10T18:54:43.107 に答える