gpt4 book ai didi

jquery-ui - 如何禁用可选列表的特定元素

转载 作者:行者123 更新时间:2023-12-03 08:21:05 25 4
gpt4 key购买 nike

我想禁用可选列表的特定元素。
我可以禁用整个列表,但是当我尝试使用特定元素时,它不起作用。

$('#disableButton').click(function(){  

$('#selectable li#b ').selectable('disable');
});

http://jsfiddle.net/Komlan/RYWaZ/1/

这是我的代码
    //reset seats
function resetSelect(){
var options = { filter: "li.selectable" };
$( "#selectable").selectable(options);

}
//Ajax get taken seats
$('input[name="choice"]').change(function(){
resetSelect();
var sc_id = $('input:radio[name=choice]:checked').val();

$.ajax({
url: 'seatings.php',
data:{ sc_id:sc_id},
type: "POST",
dataType:'text',
success: function(data){
var id = data.split(",");
for (var i=0;i<id.length -1;i++){
alert(id[i]);
var string = "#"+id[i];
$(string).css("color","red");
$('#selectable li'+string).removeClass("selectable ui-selected");
}
var options = { filter: "li.selectable" };
$( "#selectable" ).selectable('destroy').selectable(options);
}

});
});

总之,每次我的单选按钮组发生变化时,我都会得到一系列 id 并一个接一个地禁用它们。

最佳答案

没有直接的方法来做到这一点(AFAIK),但这里有一个你可以使用的小技巧(记住,这只是一个技巧,也许不是最好的):

添加css类“selectable”(或任何你想要的):

<ol id="selectable">
<li class="ui-widget-content selectable" id="ok"> 1</li>
<li class="ui-widget-content selectable"> 2</li>
<li class="ui-widget-content selectable"> 3</li>
<li class="ui-widget-content selectable"> 4</li>
<li class="ui-widget-content selectable"> 5</li>
<li class="ui-widget-content selectable"> 6</li>
<li class="ui-widget-content selectable"> 7</li>
</ol>

然后在该 css 类上使用 filter :
// Create a filter to only make <li> with the specified css class, selectable.
var options = { filter: "li.selectable" };
$( "#selectable" ).selectable(options);

$('#lol').click(function(){
console.log('dsfds');

// Remove/add (toggle) the class used in the filter on the <li> you want to remove the selectable.
// (Also remove the ui-selected in case it's selected.)
$('#selectable li#ok').toggleClass("selectable").removeClass("ui-selected");

// Now destroy the selectable and re-create it with the filter again.
// We removed the css class from a <li> used in the filter, so it won't be selectable again.
$( "#selectable" ).selectable('destroy').selectable(options);
});

更新: http://jsfiddle.net/RYWaZ/7/

引用:
  • Selectable filter
  • .toggleClass()
  • 关于jquery-ui - 如何禁用可选列表的特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14691214/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com