【问题标题】:How to save sortable elements positions in MVC .Net?如何在 MVC .Net 中保存可排序元素的位置?
【发布时间】:2019-08-20 11:07:35
【问题描述】:

如何获取所有项目索引并在更改位置后更新和保存

<ul id="sortable"> 
<li class="ui-state-default">Item 1</li> 
<li class="ui-state-default">Item 2</li> 
<li class="ui-state-default">Item 3</li> 
<li class="ui-state-default">Item 4</li> 
<li class="ui-state-default">Item 5</li> 
<li class="ui-state-default">Item 6</li> 
<li class="ui-state-default"><Item 7</li> 
</ul>




$("#sortable").sortable({
stop: function(event, ui) {
    alert("New position: " + ui.item.index());
}

【问题讨论】:

  • 嗨 Giorgi - 你说的保存是什么意思?如果您要在排序事件后循环遍历 ul 中的所有 li 元素,您将拥有最新的索引 - 然后您想存储这些更新的索引吗?
  • @cookee89 嗨,感谢您的回复。在更改项目的位置后,我希望它在刷新或新登录后保持在该位置,但它是一项不同的工作,所以现在对我来说更重要的是在我对其进行排序时获取所有更新的项目位置
  • 如果你想按你说的那样持久化项目,你需要一种机制来做到这一点 - 你可以使用 cookie 来存储和更新页面刷新,或者你可以使用服务器上的数据存储您保存到的一侧

标签: c# jquery html asp.net


【解决方案1】:

如果您想在位置更改后显示所有列表项的更新位置,您可以执行以下操作

$("#sortable").sortable({
      update: function(event, ui) {
         var updatedPositions = "";
         $("#sortable li").each(function(idx, li){
         updatedPositions += $(li).html() + " New position: " + idx + '\n';
      })
      alert(updatedPositions)
    }
})  

api文档可以在here找到

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-07
    • 2018-07-08
    相关资源
    最近更新 更多