Javascript 在单击时启用和禁用jquery排序表
我有一个按钮,我在点击时切换。此按钮在html中名为“subtaskTaskList”的列表上启用jquery可排序类。但是,我可以让按钮切换,但可排序的启用和禁用似乎没有响应。请参阅下面的代码Javascript 在单击时启用和禁用jquery排序表,javascript,jquery,html,twitter-bootstrap,jquery-ui,Javascript,Jquery,Html,Twitter Bootstrap,Jquery Ui,我有一个按钮,我在点击时切换。此按钮在html中名为“subtaskTaskList”的列表上启用jquery可排序类。但是,我可以让按钮切换,但可排序的启用和禁用似乎没有响应。请参阅下面的代码 <button id="sortButton" class="btn btn-default btn-xs"><span class="glyphicon glyphicon-adjust"></span></button> $("#sortButto
<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").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");
}
});
后两段代码甚至不会导致glyphicon的切换。如有任何意见,将不胜感激。我查看了堆栈溢出,但没有发现任何处理此问题的具体问题。使用外部函数切换可排序的启用和禁用
$(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");
}
使用外部功能切换可排序启用和禁用
$(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");
}
以下是如何启用/禁用
sortable()
:
以下是如何启用/禁用
sortable()
:
请尝试制作一个提琴以提供您案例中的问题。请尝试制作一个提琴以提供您案例中的问题。这与向跨度添加id一起工作,以使选择更容易。我真正的问题是hasClass没有识别正确的选择器。谢谢我没有测试你的代码,只是在我当前的项目上尝试了我的想法:)你很好。这项工作与向跨度添加id一起进行,以使选择更容易。我真正的问题是hasClass没有识别正确的选择器。谢谢我没有测试你的代码,只是在我当前的项目上尝试了我的想法:)不客气