使用jQuery Sortable删除时,jHTMLArea iframe被禁用

时间:2013-01-31 19:39:29

标签: jquery jquery-ui jquery-ui-sortable jhtmlarea

我正在使用jQuery Sortable和jHTMLArea。我基本上有DIV是可排序的,DIV是可排序的。但是,当您将DIV放在任何位置时,jHTMLArea的内容将变为空,并且jHTMLArea将被禁用。 iFrame和textarea都被禁用。你不能在里面写任何东西。

我不确定是什么问题,所以我想知道这是否与图书馆本身有关。

我正在使用的代码是:

// Enable Sortables
$("div.nnUtil").sortable({
    cancel: ".nnSettings",
    connectWith: 'div.nnUtil',
    distance: 5,
    forcePlaceholderSize: true,
    items: '> div.nnItems',
    placeholder: 'ui-state-highlight',
    revert: 250
});

1 个答案:

答案 0 :(得分:3)

我找到了解决方案。

基本上,当您对列表进行排序时,div的内容会被隐藏。它阻止了htmlarea的内容。 jHTMLArea论坛中记录了许多问题。

我做的是当你放弃div时我已经渲染了HTMLArea。

这是工作demo

$('textarea').htmlarea();

var fixHelperModified = function (e, tr) {
    var $originals = tr.children();
    var $helper = tr.clone(true, true);
    $helper.children().each(function (index) {
        $(this).width($originals.eq(index).width())
    });
    return $helper;
},
updateIndex = function (e, ui) {
    $('td.index', ui.item.parent()).each(function (i) {
        $(this).html(i + 1);
    });
    ui.item.find('textarea').htmlarea('dispose');
    ui.item.find('textarea').htmlarea();
};

$("#sort TBODY").sortable({
    helper: fixHelperModified,
    stop: updateIndex
}).disableSelection();

示例问题

http://jhtmlarea.codeplex.com/workitem/16028

http://jhtmlarea.codeplex.com/workitem/10907