在keyup之后禁用jQuery Draggable

时间:2013-10-11 02:17:06

标签: javascript jquery html jquery-ui

这是我的小提琴:http://jsfiddle.net/2vtDj/1/

现在这些方框是可拖动的,但是我希望它们在文本输入到输入框后可以进行UNdraggable。

jQuery我一直在搞乱:

    // tried 'disable', and just #sortable without li
    $("#sortable > li").draggable('destroy'); 

完整代码:

    $('input').keyup(function() {
filter(this);

});

function filter(element) {
var value = $(element).val();

$("#sortable > li").each(function () {
    if ($(this).text().toLowerCase().indexOf(value) > -1) {
        $(this).show();
        $(".number").show();
        $(".numberstwo").show();
         $("#sortable > li").draggable('destroy');     

        // $('#sortable').addClass("destory");


    } else {
        $(this).hide();
        $(".number").hide();
        $(".numberstwo").hide();
        $(".games").css( "padding-top", "40px"); 

    }
});
}

1 个答案:

答案 0 :(得分:2)

$("#sortable").sortable({
    revert: true,
    placeholder: "dashed-placeholder"  ,
    cancel: '.canceled' // <-----add this option
});

$("#sortable > li").each(function () {
    if ($(this).text().indexOf(value) > -1) {
        $(this).show();
        $(".number").fadeOut();
        $(".numberstwo").fadeOut();
        $(this).addClass('canceled'); // <---- add
    } else {
        $(this).hide();
        $(".number").show();
        $(".numberstwo").show();         
        $(this).removeClass('canceled');  // <---- add
    }
});