1

ユーザーが複数の行を選択できるテーブルがあります。選択された行には一意の ID があり、これが文字列に集約され、php ファイルに POST されます。1つの問題があることを除いて、すべてがうまく機能します。行が選択されている場合、選択の最後のステータスを POST しません。したがって、ログを調べると、これは基本的に次のように表示されます。

14_629_2 view.php:541
14_629_15 view.php:541
14_629_2 view.php:541
14_629_15 view.php:541
14_629_2;14_629_15 view.php:541
14_629_15 view.php:541

ちなみに2列です。したがって、最後の状態は両方の行が選択されている可能性がありますが、何らかの理由で代わりに14_629_2;14_629_15 view.php:541投稿 されます。14_629_15 view.php:541キャッシュや選択の履歴を保持してから、すべてをループしてダンプするかのようです..そして時々めちゃくちゃになります。

基本的に、現在の選択のみを追跡し、履歴を追跡する必要はありません。


私が使用するコード:

  <script> 
    $('#t1').selectable({
      filter:'tbody tr',
      stop: function(event, ui){
      var map = $( this ).find( ".ui-selected" ).map(function() {return this.id;}).get().join(";");
      // var result = $( "#plate" ).empty().html(map);
      $('#batch_send').click(function (){
         $(function() {
            $.ajax({
               url: 'batch_send.php',
               type: 'POST',
               data: 'variable='+map,
               success: function(data) {
                  $('.display_div').html(map);
                  console.log(map); 
               }
            });
         });
      });
      }
    });
    </script>

私はJavaScriptが初めてなので、これは明らかな間違いに違いありません...

4

1 に答える 1