4

剣道メニューのサブ項目を動的に無効にしたい。剣道メニューを次のように定義しました

Html:
<div id="menu"></div>
<button id='enable'>Enable</button>

Jクエリ:

$("#menu").kendoMenu({
    dataSource:[{text:"Actions",value:1,items:[{text:"First",value:2},{text:"Second",value:2}]}]
});

今、2番目のアイテムを無効にしたいと思います。ボタンをクリックすると、メニューを有効にしたい

$("#enable").on('click',function(){
     // here i want to enable the second
});

これどうやってするの。

4

3 に答える 3

8

以下のコードを試してください。

var menu = $("#menu").kendoMenu().data("kendoMenu");    
menu.enable("li:last", false);

参照: http://jsfiddle.net/ramsunvtech/VXEEN/

更新: 2016 年 12 月 26 日

var menu = $("#menu").kendoMenu().data("kendoMenu");

$("#enable").on('click', function() {
  menu.enable("li:last", true);
});

$("#disable").on('click', function() {
  menu.enable("li:last", false);
});
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2016.3.1118/styles/kendo.common-material.min.css" />
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2016.3.1118/styles/kendo.material.min.css" />
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2016.3.1118/styles/kendo.material.mobile.min.css" />

<script src="//kendo.cdn.telerik.com/2016.3.1118/js/jquery.min.js"></script>
<script src="//kendo.cdn.telerik.com/2016.3.1118/js/kendo.all.min.js"></script>

<button id='disable'>Disable Last Item</button>
<button id='enable'>Enable Last Item</button>

<ul id="menu">
  <li>
    Continents
    <ul>
      <li>
        Asia
        <ul>
          <!-- moving the UL to the next line will cause an IE7 problem -->
          <li>India</li>
          <li>China</li>
          <li>Japan</li>
          <li>South Korea</li>
        </ul>


      </li>
      <li>Europe</li>
      <li>Middle East</li>
    </ul>
  </li>
</ul>


        

API リファレンス: http://docs.telerik.com/kendo-ui/api/javascript/ui/menu

于 2013-06-24T06:57:17.583 に答える
3

これを読んでください http://docs.kendoui.c​​om/api/web/ menu#methods-enable

どういうわけか、必要な選択をターゲットにする必要があります。たとえば、メニューのテンプレートを提供し、2 番目の選択の ID が「second」の場合、これを無効にする方法は次のとおりです。

var menu = $("#menu").data("kendoMenu");
menu.enable("#second", false);
于 2013-06-24T07:08:47.030 に答える
1

リスト内の項目を参照するには、 :eq jQuery Selectorを使用できます。

var menu = $("#menu").kendoMenu().data("kendoMenu");    
menu.enable("li:eq(1)", false);

アイテムのインデックスをパラメーターとして渡すだけです。

于 2016-01-28T10:33:01.983 に答える