jQuery Sortable - 向占位符添加文本

时间:2012-08-22 18:06:22

标签: jquery jquery-ui

我正在尝试将文本添加到拖动可排序项目时显示的占位符框中。在jQuery的UI中有一个我缺少的功能吗?现在我正在尝试.append()信息,但它不起作用。有人可以帮忙吗?这是jQuery函数......

//Sortable Function - Edit Wizard
$(function () {

    //add text to placeholder box
    if ($('.ui-state-highlight').is(':visible')) {
        $('.ui-state-highlight').append('<span>MOVE HERE</span>');
    };


    $(".sortable").sortable({
        placeholder: "ui-state-highlight",
        //revert: true,
        grid: [20, 20],
        handle: '.editMove',
        opacity: 0.6,
        scroll: true,
        scrollSensitivity: 80,
        zIndex: 10
    });
    $(".sortable").disableSelection();
});

编辑:猜测.append()需要有一些.live()更改函数吗?

干杯, 麦克

2 个答案:

答案 0 :(得分:5)

您可以从开始回调修改占位符,如下所示:

$('#my-sortable').sortable({
    start: function(event, ui) {
        ui.placeholder.html('Placeholder Content!');
    }
});

答案 1 :(得分:4)

我认为问题在于即使你的条件语句正在寻找'.ui-state-highlight'是可见的,但这并不意味着'$(this)'指的是那个元素,除非有更多到这里没有显示的jQuery。我在下面加了一个小jsfiddle帮助解释,希望这有帮助!

编辑:我加入了一个新的小提琴,我99%肯定是你正在寻找的。

我使用jQuery UI - Sortable页面上的示例设置了一个可排序列表,然后我看了一下用它构建的事件。有一个名为start的事件在排序开始时绑定事件,我用它将文本附加到'.ui-state-highlight'

http://jsfiddle.net/6PrvC/