【发布时间】:2016-02-23 12:08:04
【问题描述】:
我有一个可以在点击时切换的按钮。此按钮在我的 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");
}
});
此代码在我的控制台中留下一个错误,提示如果未初始化 sortable,则无法禁用它。我尝试了此代码的变体,包括:
$("#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");
}
});
后两段代码甚至不会导致字形图标的切换。任何投入将不胜感激。我查看了堆栈溢出,但没有发现任何与此问题相关的具体问题。
【问题讨论】:
-
请尝试制作一个小提琴来解决您的问题。
标签: javascript jquery html twitter-bootstrap jquery-ui