2016-10-20 11 views
7

Nestable Listを使用してReleseアクセスを行っています。 List1からList2に項目をドロップすると、データベースに保存する必要があります。List2にドロップされた項目を特定する方法?Nestableリストで要素を削除する方法

これは私のコードです:

 <div class="col-lg-6"> 
      <h3 class="droppTextCenter">Serviços Disponíveis</h3> 
      <div class="dd" id="nestable"> 
       <script id="template" type="text/template7"> 
        <ol class="dd-list"> 
         {{#each Services}} 
         <li class="dd-item" data-id="{{Id}}"> 
          <div class="dd-handle"> 
           <div class="col-lg-9"> 
            {{Descryption}} 
           </div> 
          </div> 
         </li> 
         {{/each}} 
        </ol> 
       </script> 
      </div> 
     </div> 
     <div class="col-lg-6"> 
      <h3 class="droppTextCenter">Serviços Liberados para o Usuário</h3> 
      <div class="dd" id="nestable2"> 
       <script id="template2" type="text/template7"> 
        <ol class="dd-list"> 
         {{#each ServicesReleased}} 
         <li class="dd-item" data-id="{{Id}}"> 
          <div class="dd-handle"> 
           <div class="col-lg-9"> 
            {{Descryption}} 
           </div> 
          </div> 
         </li> 
         {{/each}} 
        </ol> 
       </script> 
      </div> 
     </div> 

私はリストを作るためにtemplate7を使用しています。

これで、ネスト可能なonChangeでajaxメソッドを作成し、データベースに保存します。

$('#nestable').nestable({ 
    maxDepth: 1, 
    group: 1 
}).on('change', updateOutput); 

// activate Nestable for list 2 
$('#nestable2').nestable({ 
    maxDepth: 1, 
    group: 1 
}).on('change', updateOutput); 

これはupdateOutputの代わりになります。 私はそれをList1からList2に移動するとデータベースに保存する必要がありますが、List2からList1に移動するときにデータベースから削除する必要があります。

function saveServicosLiberados() { 
    $.ajax({ 
     url: "/Admin/MeusNegociosAcessos/SaveServicosLiberados", 
     method: "POST", 
     data: { 
      Id: ???????? 
     }, 
     success: function (result) { 
      var list = e.length ? e : $(e.target), output = list.data('output'); 

      if (window.JSON) { 
       output.val(window.JSON.stringify(list.nestable('serialize'))); 
      } else { 
       output.val('É necessario estár com um nevegador com suporte à JSON.'); 
      } 
     } 
    }); 
} 

function deleteServicosLiberados() { 
    $.ajax({ 
     url: "/Admin/Delete", 
     method: "POST", 
     data: { 
      Id: ?????????? 
     }, 
     success: function (result) { 
      var list = e.length ? e : $(e.target), output = list.data('output'); 

      if (window.JSON) { 
       output.val(window.JSON.stringify(list.nestable('serialize'))); 
      } else { 
       output.val('É necessario estár com um nevegador com suporte à JSON.'); 
      } 
     } 
    }); 
} 

だから、私は落としたアイテムからIDを取るのですか?

答えて

1

これは解決するのは難しい問題でした(私がした場合...あなたに教えてください)。

first私はを別に置いた。
私はここでNotepad++に手でコードしています。
このHTMLプリプロセッサの構文は、質問の実際の話題とは関係がありませんでした。

質問はNestable pluginを使用して、別のリストからリストアイテム「動き」を保存する方法で、ウィッヒは仕方によって、2014年8月以来維持されていません。
私はあなたのために2つの例を作った。

Oneどこ左のリストから、またはにドラッグ要素idの保存にAJAXリクエストをフックに示しています。
Secondは、どこにAjaxリクエストをフックするかを示しています。リストを保存してください変更になります。

私は絶対にプラグインコードに触れていませんでした...
完全に動作しているようです。

さらに、あなたの質問はその結果の使用方法に関するものでした。
コードの代わりにthis GitHub exampleから始めました。

DBに保存するために関連する情報を取得できる場所が見つかりました。

だから両方のペンを見てください。
何かが不明な場合は私に尋ねてください。

私は何が起こっているのかを理解するのに役立つすべての関連性のあるファイルを残しました。



おかしい逸話(?):私はこの答えを投稿し、生還しDyn
DDoS攻撃から来てGitHubにで待って、今日3時間を失いました。たわごとが起こる! ;)

関連する問題