gpt4 book ai didi

javascript - 启用和禁用 jquery 单击可排序

转载 作者:行者123 更新时间:2023-11-28 06:20:34 25 4
gpt4 key购买 nike

我有一个单击即可切换的按钮。此按钮在我的 html 中名为“subtaskTaskList”的列表中启用 jquery 可排序类。但是,我可以使用按钮进行切换,但可排序启用和禁用似乎没有响应。请参阅下面的代码。

<button id="sortButton" class="btn btn-default btn-xs"><span class="glyphicon glyphicon-adjust"></span></button>

$("#sortButton").click(function(){
if($("#sortButton").hasClass("glyphicon-adjust")){
$("#subtaskTaskList").sortable();
$("#sortButton .glphyicon").toggleClass("glyphicon-adjust glyphicon-lock");
}else{
$("#subtaskTaskList").sortable('disable');
$("#sortButton .glphyicon").toggleClass("glyphicon-lock glyphicon-adjust");
}
});

这段代码在我的控制台中留下了一个错误,指出如果未初始化,则无法禁用可排序。我尝试过此代码的变体,包括:

$("#sortButton").click(function(){
if($("#sortButton .glyphicon").hasClass("glyphicon-adjust")){
$("#subtaskTaskList").sortable();
$("#sortButton .glphyicon").toggleClass("glyphicon-adjust glyphicon-lock");
}else{
$("#subtaskTaskList").sortable('disable');
$("#sortButton .glphyicon").toggleClass("glyphicon-lock glyphicon-adjust");
}
});

以及:

$("#sortButton").click(function(){
if($("#sortButton").find("span").hasClass("glyphicon-adjust")){
$("#subtaskTaskList").sortable();
$("#sortButton .glphyicon").toggleClass("glyphicon-adjust glyphicon-lock");
}else{
$("#subtaskTaskList").sortable('disable');
$("#sortButton .glphyicon").toggleClass("glyphicon-lock glyphicon-adjust");
}
});

后两段代码甚至不会导致字形图标的切换。任何投入将不胜感激。我查看了堆栈溢出,但没有发现任何处理此问题的具体问题。

最佳答案

使用外部函数切换可排序启用-禁用

$(document).on("click","button#switcher",function(){
sortDisable();
})

function sortDisable() {
$( "ul#sortme" ).sortable("disable");
}

你的代码也是如此:

$("#sortButton").click(function(){
if($("#sortButton").find("span").hasClass("glyphicon-adjust")){
sortEnable("#subtaskTaskList");
$("#sortButton .glphyicon").toggleClass("glyphicon-adjust glyphicon-lock");
}else{
sortDisable("#subtaskTaskList");
$("#sortButton .glphyicon").toggleClass("glyphicon-lock glyphicon-adjust");
}
});


function sortEnable( target ) {
$( target ).sortable("enable");
}
function sortDisable( target ) {
$( target ).sortable("disable");
}

关于javascript - 启用和禁用 jquery 单击可排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35577210/

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