1

我正在使用可排序的 JQuery 来排序我的列表我需要在 Jasmine 上进行测试,但我不知道如何仅使用 JS 触发此事件。

这是我的 JS 对象用于我的列表。

List = {
  sortable: function(){
    var self = this;

    $( "#lists" ).sortable({
      stop: function(event, ui) {
        lis = $(".lists-container").find("li");
        list_ids = [];
        for (var i = 0; i < lis.length; i++) {
          list_ids.push($(lis[i]).data("id")); 
        } 
        /* É preciso passar o token para impedir que alguém faça uma resquisição se passando por você */
        var csrfToken = $("meta[name='csrf-token']").attr("content");
        $.ajaxSetup({
          headers: {
            'X-CSRF-Token': csrfToken
          }
        });

        self.postReorder('/lists/reorder', {ids: list_ids}, function(){ console.log("Post done.") });
      }
    });

    $( "#lists" ).sortable({
      placeholder: "ui-state-highlight"
    });

    $( "#lists" ).disableSelection();
  },
  postReorder: function (url, data, succesessFunction){
    $.post(
        url, //'/lists/reorder',  
        data, //{ids: list_ids},
        succesessFunction  //function(){ console.log(list_ids) }
    );
  }
};
4

0 回答 0