Jquery 如何禁用剑道UI多选选项?有JSFIDLE的例子吗?

Jquery 如何禁用剑道UI多选选项?有JSFIDLE的例子吗?,jquery,user-interface,kendo-ui,Jquery,User Interface,Kendo Ui,我无法在document.ready()函数中禁用kendo ui multiselect控件的特定选项项。以下代码不会在加载时禁用Item1 <select id="multiselect" multiple="multiple"> <option disabled="disabled">Item1</option> <option>Item2</option> </select> 项目1 项目2 任

我无法在document.ready()函数中禁用kendo ui multiselect控件的特定选项项。以下代码不会在加载时禁用Item1

<select id="multiselect" multiple="multiple">
    <option disabled="disabled">Item1</option>
    <option>Item2</option>
</select>

项目1
项目2
任何帮助都将不胜感激


如果您想在初始化multiselect之前禁用某个选项,请多谢:

  $(document).ready(function() {
    $("#multiselect option").eq(0).prop("disabled", "disabled");        
    $("#multiselect").kendoMultiSelect({});
  });
但是,如果multiselect已初始化,则需要销毁小部件,更新选项并重新初始化小部件:

<div id="msCont">  
  <select id="multiselect" multiple="multiple">
    <option value="1">Item1</option>
    <option value="2">Item2</option>
    <option value="3">Item3</option>
    <option value="4">Item4</option>
    <option value="5">Item5</option>
  </select>
</div>

$(document).ready(function() {
    //Init widget
    $("#multiselect").kendoMultiSelect({});
    //Destroy widget
    var multiselect = $("#multiselect").data("kendoMultiSelect");
    multiselect.destroy();
    //KendoUI seems to leave behind some widget divs, so remove them
    // using container div as selector
    $("#msCont").find(".k-multiselect-wrap").remove();
    $("#msCont").prepend($("#multiselect")).find(".k-widget").remove();
    //update the option and re-initialize
    $("#multiselect option").eq(0).prop("disabled", "disabled");        
    $("#multiselect").kendoMultiSelect({});     
});

项目1
项目2
项目3
项目4
项目5
$(文档).ready(函数(){
//初始化小部件
$(“#multiselect”).kendoMultiSelect({});
//销毁小部件
var multiselect=$(“#multiselect”).data(“kendoMultiSelect”);
multiselect.destroy();
//KendoUI似乎留下了一些小部件div,所以请删除它们
//使用容器div作为选择器
$(“#mscontent”).find(“.k-multiselect-wrap”).remove();
$(“#mscontent”).prepend($(“#multiselect”).find(“.k-widget”).remove();
//更新选项并重新初始化
$(“#多选选项”).eq(0).prop(“禁用”、“禁用”);
$(“#multiselect”).kendoMultiSelect({});
});


如果要在初始化multiselect之前禁用某个选项,请执行以下操作:

  $(document).ready(function() {
    $("#multiselect option").eq(0).prop("disabled", "disabled");        
    $("#multiselect").kendoMultiSelect({});
  });
但是,如果multiselect已初始化,则需要销毁小部件,更新选项并重新初始化小部件:

<div id="msCont">  
  <select id="multiselect" multiple="multiple">
    <option value="1">Item1</option>
    <option value="2">Item2</option>
    <option value="3">Item3</option>
    <option value="4">Item4</option>
    <option value="5">Item5</option>
  </select>
</div>

$(document).ready(function() {
    //Init widget
    $("#multiselect").kendoMultiSelect({});
    //Destroy widget
    var multiselect = $("#multiselect").data("kendoMultiSelect");
    multiselect.destroy();
    //KendoUI seems to leave behind some widget divs, so remove them
    // using container div as selector
    $("#msCont").find(".k-multiselect-wrap").remove();
    $("#msCont").prepend($("#multiselect")).find(".k-widget").remove();
    //update the option and re-initialize
    $("#multiselect option").eq(0).prop("disabled", "disabled");        
    $("#multiselect").kendoMultiSelect({});     
});

项目1
项目2
项目3
项目4
项目5
$(文档).ready(函数(){
//初始化小部件
$(“#multiselect”).kendoMultiSelect({});
//销毁小部件
var multiselect=$(“#multiselect”).data(“kendoMultiSelect”);
multiselect.destroy();
//KendoUI似乎留下了一些小部件div,所以请删除它们
//使用容器div作为选择器
$(“#mscontent”).find(“.k-multiselect-wrap”).remove();
$(“#mscontent”).prepend($(“#multiselect”).find(“.k-widget”).remove();
//更新选项并重新初始化
$(“#多选选项”).eq(0).prop(“禁用”、“禁用”);
$(“#multiselect”).kendoMultiSelect({});
});


这没有帮助:-(因此,基本上还没有禁用功能。您只能隐藏选项。这没有帮助:-(因此,基本上还没有禁用功能。您只能隐藏选项。您好..谢谢回复。我运行了您的演示,但实际上是从列表中删除了一个选项,而不是禁用它。您好..谢谢回复。我运行了您的演示,但实际上是从列表中删除了一个选项,而不是禁用它。