Использование KnockoutJS с отсоединенными узлами

То, что я хочу сделать, это отсоединить некоторые узлы с помощью метода отсоединения jQuery, обновить мою ViewModel, присоединить мои узлы обратно и получить значения, которые будут обновлены.

Это возможно?

Вот этополная скрипка из-за чего я снимаю. По сути, я хотел бы иметь возможность перемещаться слева направо, нажимать кнопку отсоединения, обновлять и прикреплять и иметь новые значения в текстовых полях.

UPDATE

Основываясь на ответе RP, лучше всего предположить, что это соответствует вашему варианту использования, - прикрепить их к домену.hiddenобновите вашу viewmodel, а затем покажите ваши узлы. Как-то так у меня работает

<code>$("#updateAndAttach").click(function () {
    var junk = $("<div />").css("display", "none");
    junk.append(nodes);
    $("#home").append(junk);

    vm.a("AAA");
    vm.b("BBB");

    $(nodes).unwrap();
});
</code>

END UPDATE

Вот полный код:

JavaScript

<code>$(function () {

    function ViewModel() {
        this.a = ko.observable("a");
        this.b = ko.observable("b");
    }

    var vm = new ViewModel();

    ko.applyBindings(vm, document.getElementById("home"));

    var nodes = null;

    $("#detach").click(function () {
        nodes = $("#home").children().detach();
    });

    $("#attach").click(function () {
        $("#home").append(nodes);
    });

    $("#update").click(function () {
        vm.a("AAA");
        vm.b("BBB");
    });
})();
</code>

HTML:

<code><div id="home">
    <input type="text" data-bind="value: a" />
    <input type="text" data-bind="value: b" />
</div>

<button id="detach">Detach</button>
<button id="update">Update</button>
<button id="attach">Attach</button>
</code>

Ответы на вопрос(3)

Ваш ответ на вопрос