Javascript Jquery排序并给出正确或不正确的消息

Javascript Jquery排序并给出正确或不正确的消息,javascript,arrays,sorting,jquery-ui,Javascript,Arrays,Sorting,Jquery Ui,我有一个可排序的列表项 <div id="reImbursement_msg" style="display: none;"></div> <div> <ul class="sortable reImbursementdiv cur"> <li id="sort_five">alpha</li> <li id="sort_one">beta</li>

我有一个可排序的列表项

<div id="reImbursement_msg" style="display: none;"></div>
<div>
    <ul class="sortable reImbursementdiv  cur">
        <li id="sort_five">alpha</li>
        <li id="sort_one">beta</li>
        <li id="sort_four">gamma</li>
        <li id="sort_three">thita</li>
        <li id="sort_two">pie</li>
    </ul>
</div>
我已根据要求创建了一支钢笔


排序完成后,我似乎错过了用户的最新订单

$(".sortable").sortable({
  update: function(event, ui) {
  var userOrder = $(".sortable.reImbursementdiv li").toArray().map(function(i) {
      return i.id
  });
      if (arraysEqual(correctOrder, userOrder) == true) {
              showMsg("reImbursement_msg", "Correct Order", "success");

      } else {
          showMsg("reImbursement_msg", "Incorrect Order", "danger");
          console.log($(".sortable.reImbursementdiv li").toArray().map(function(i) {
              return i.id
          }));
      }


      return true;
  }
}).disableSelection();

在您的示例中,您从未更新userOrder,因此正在比较的顺序从未更改。请审查:

$function{ var correctororder=[排序第一,排序第二,排序第三,排序第四,排序第五]; var userOrder=[]; 函数arraysequalar1,arr2{ var结果=真; 如果arr1.length==arr2.length{ $.eacharr1,函数键,val{ 结果=结果和arr1[键]==arr2[键]; }; }否则{ 结果=假; } console.logarr1,arr2,结果; 返回结果; } 函数showMsgbox、msg、msgStatus{ 美元箱 .removeClass 显示 .addClassalert警报-+msgStatus .htmlmsg; } $.sortable.sortable{ 更新:functionevent,ui{ userOrder=$.sortable.replumentdiv li.toArray.mapfunctioni{ 返回身份证 }; 如果是ArraySequalCorrector,则为userOrder{ showmsgresumberment\u msg,顺序正确,成功; }否则{ 显示付款信息、订单错误、危险; console.log$.sortable.repensementDiv li.toArray.mapfunctioni{ 返回身份证 }; } 返回true; } }.禁止选择; userOrder=$.sortable.replumentdiv li.toArray.mapfunctioni{ 返回身份证 }; }; 五 一 四 三 二
您可以检查它们的顺序是否正确,只需执行arr1.toString==arr2.toString是否可以创建一个代码笔或类似的代码,以便读者可以自己运行代码?@RobertAKARobin我添加了一个代码笔链接。请核对。是的,我同意。我已经意识到了,但是嘿,谢谢。我愿意接受你的回答。
$(".sortable").sortable({
  update: function(event, ui) {
  var userOrder = $(".sortable.reImbursementdiv li").toArray().map(function(i) {
      return i.id
  });
      if (arraysEqual(correctOrder, userOrder) == true) {
              showMsg("reImbursement_msg", "Correct Order", "success");

      } else {
          showMsg("reImbursement_msg", "Incorrect Order", "danger");
          console.log($(".sortable.reImbursementdiv li").toArray().map(function(i) {
              return i.id
          }));
      }


      return true;
  }
}).disableSelection();