1

問題を説明するために、rniemeyerからJSFiddleを変更しました:http://jsfiddle.net/mTqMt/1/

  <div class="container" data-bind="sortable: groupOrItems">
    <!--ko if: type=='Group'-->
    <div>
      <div class="title" data-bind="text: name()"></div>
      <!--here I would actually have a nested sortable-->
    </div>
    <!--/ko-->
    <!--ko if: type=='Item'-->
    <div class="item" data-bind="text: name()"></div>
    <!--/ko-->
  </div>

Firebugによると:「TypeError:ノードはnullです」knockout-latest.debug.jsの546行目

「sortable」ではなく「foreach」で試してみたところ、うまくいきました。

何か案は?

4

1 に答える 1

3

ソート可能バインディングと jQuery UI ソート可能には、ソート対象のものを取得するための親要素が本当に必要です。

少なくとも「アイテム」全体を次のような要素でラップする必要があります。

  <div class="container" data-bind="sortable: groupOrItems">
    <div>
      <!--ko if: type=='Group'-->
      <div>
        <div class="title" data-bind="text: name()"></div>
        <!--here I would actually have a nested sortable-->
      </div>
      <!--/ko-->
      <!--ko if: type=='Item'-->
      <div class="item" data-bind="text: name()"></div>
      <!--/ko-->
    </div>
  </div>

更新: http://jsfiddle.net/rniemeyer/FSYYb/

于 2013-01-08T16:08:11.187 に答える