Добавить в JQuery-ui сортируемый список

Простой вопрос о JQuery-UI отсортированные списки

Я сделал:

<div id="adder">
<input type="text" name="add1" /><br />
<input class='btn' type='submit' value='Submit' />
</div>

Как я могу использовать это, чтобы добавить то, что пользователь входит в конец списка сортировки jquery-ui?

Ответы

Ответ 1

Предположительно, вы просто возьмете текст, оберните его в LI классом ui-state-default и вставьте его в сортируемый элемент UL. Затем вам нужно refresh сортировать, чтобы распознать вновь вставленный элемент:

$(".btn").click(function (e) {
    e.preventDefault();
    var text = $("input[name='add1']").val();
    var $li = $("<li class='ui-state-default'/>").text(text);
    $("#sortable").append($li);
    $("#sortable").sortable('refresh');
});

Здесь вы можете попробовать.

Ответ 2

Для меня $("#sortable").sortable('refresh'); не работал.

Но это сработало: $("#sortable").trigger("sortupdate");

Ответ 3

Я знаю, что это не совсем ответ, но @karim79 помог мне найти способ добавления изображения в сортируемый список, если кому-то это нужно здесь:

<input type='file' onchange="readURL(this);" style="width: 100%;" />

function readURL(input) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();
        reader.onload = function (e) {
            var $li = $("<li class='ui-state-default'/>");
            $li.append('<img src="'+ e.target.result +'" width="150" height="200" />');
            $("#sortable").append($li);
            $("#sortable").sortable('refresh');
        };
        reader.readAsDataURL(input.files[0]);
    }
}