更改jquery可排序列表时,按钮未显示

时间:2013-05-13 06:16:04

标签: jquery html5 jquery-ui

我正在使用jquery可排序功能,并且我有一个可排序的列表,现在我希望如果用户更改排序顺序,则显示保存排序顺序按钮,否则不应显示该按钮。我编写了自己的函数showButton并在jquery sortable函数的update属性中调用它,但它无法正常工作。以下是我的代码:

    <script>      
    $(function() {
    $( "#sortable" ).sortable({
        placeholder: "ui-state-highlight",
        cursor: 'crosshair',
        update: function(event, ui) {
            var order = $("#sortable").sortable("toArray");
            $('#sorted_order').val(order.join(","));
           showButton();

        }
});
    $( "#sortable" ).disableSelection();
});

function showButton()
{   

 var field = "#somefield_id";//is the field after which I want my button to show up

 $node = '<input type="submit" id="saveBtn" value="save Order">';

 $(field).after($node); 

};

请建议是否还有其他好方法。提前致谢

1 个答案:

答案 0 :(得分:0)

我假设您只希望用户在完成排序时能够看到该按钮。在这种情况下,请使用“停止”。 例如:

$( "#sortable" ).sortable({
        placeholder: "ui-state-highlight",
        cursor: 'crosshair',
        update: function(event, ui) {
            var order = $("#sortable").sortable("toArray");
            $('#sorted_order').val(order.join(","));
        },
        stop: function() {
            showButton();
        }
});

stop的api中阅读更多内容。