javascript - 维护 Ul Li 列表的序列

标签 javascript jquery html

我有一个 ul li 列表,它可以选择对元素进行排序和上下移动。我的要求是,一旦用户以所需的方式对元素进行排序,我也希望能够将该序列保存在数据库中。

我有没有可能得到一个数组,其中包含 li 的 id 和 li 的位置索引。

例如。在这种情况下,当 value = 9 时,index 应该是 0,
值 = 11,索引 = 1 等。

呈现的示例 html 是:

 <ul id="ul_li_SubCategories" style="width:200px;" class="chargeCapturetable margin0">
    <li sequence="1" title="Category 1" class="liEllipsis" value="9"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 1</a></li>
    <li sequence="2" title="Category 3" class="liEllipsis" value="11"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 3</a></li>
    <li sequence="4" title="Category 4" class="liEllipsis" value="12"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 4</a></li>
    <li sequence="5" title="Category 6" class="liEllipsis" value="22"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 6</a></li>
    <li sequence="6" title="Category 5" class="liEllipsis" value="13"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 5</a></li>
    <li sequence="7" title="Category 7" class="liEllipsis" value="55"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 7</a></li>
    <li sequence="99999" title="Category 8" class="liEllipsis" value="62"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 8</a></li>
</ul>

最佳答案

获取一个数组,其中包含 li 的 ID 和该 li 的位置索引。

.map()可与 .attr() 结合使用

var arr = $('#ul_li_SubCategories li').map(function (elem) {
    return {
        value : $(this).attr('value'),
        index : $(this).index()
    }
}).get();

$(function() {
  var arr = $('#ul_li_SubCategories li').map(function(elem) {
    return {
      value: $(this).attr('value'),
      index: $(this).index()
    }
  }).get();
  
  console.log(arr)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="ul_li_SubCategories" style="width:200px;" class="chargeCapturetable margin0">
  <li sequence="1" title="Category 1" class="liEllipsis" value="9"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 1</a>
  </li>
  <li sequence="2" title="Category 3" class="liEllipsis" value="11"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 3</a>
  </li>
  <li sequence="4" title="Category 4" class="liEllipsis" value="12"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 4</a>
  </li>
  <li sequence="5" title="Category 6" class="liEllipsis" value="22"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 6</a>
  </li>
  <li sequence="6" title="Category 5" class="liEllipsis" value="13"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 5</a>
  </li>
  <li sequence="7" title="Category 7" class="liEllipsis" value="55"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 7</a>
  </li>
  <li sequence="99999" title="Category 8" class="liEllipsis" value="62"><a href="#"><span class="viewIcons delFaceName _delete fl"></span>Category 8</a>
  </li>
</ul>

关于javascript - 维护 Ul Li 列表的序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31048797/

相关文章:

html - 相对于同级水平定位元素而不包装 div

javascript - 如何从另一个组件Vue获取组件的HTML元素

javascript - jQuery API 调用 Entity Framework API Put 方法

javascript - 如何在 Choices.js 中禁用按字母顺序自动排序项目?

c# - 有没有办法检查 Controller 是否禁用了 JavaScript

javascript - 如何用 jQuery 控制 CSS 转换的速度?

javascript - Bootstraps Affix 是否附加时,如何在元素上添加和删除类

javascript - Chrome 扩展程序可更改页面中的文字

javascript - 单击按钮时汇总 Cookie 值

html - 隐藏动态生成的 border-top 属性 <td>