首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >排序UI: jQuery (‘toArray’)返回空数组

排序UI: jQuery (‘toArray’)返回空数组
EN

Stack Overflow用户
提问于 2009-11-03 03:00:13
回答 6查看 44.2K关注 0票数 28

这把我难倒了。下面的代码返回",,,":

代码语言:javascript
复制
<script type="text/javascript">
$(function() {
    $('#listB').sortable({
        connectWith: '#listA',
        update: function(event, ui) {
            var result = $(this).sortable('toArray');
            alert(result);
            }
    });
    $('#listA').sortable({
        connectWith: '#listB'
    });
});
</script>

<div id="boxA">
    <ul id="listA" class="myList">
        <li value="1">Item A</li>
        <li value="2">Item B</li>
        <li value="3">Item C</li>
        <li value="4">Item D</li>
        <li value="5">Item E</li>
        <li value="6">Item F</li>
        <li value="7">Item G</li>
    </ul>
</div>

<div id="boxB">
    <ul id="listB" class="myList">
        <li value="1">Item A</li>
        <li value="2">Item B</li>
        <li value="3">Item C</li>
        <li value="4">Item D</li>
        <li value="5">Item E</li>
        <li value="6">Item F</li>
        <li value="7">Item G</li>
    </ul>
</div>

为什么?!快把我逼疯了!有什么建议吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-11-03 03:13:30

.sortable('toArray')将项Ids序列化为数组,而您的项没有Ids,这就是为什么您有空字符串。

票数 45
EN

Stack Overflow用户

发布于 2013-03-13 18:33:39

您可以像这样定义要获取的属性:

代码语言:javascript
复制
var result = $(this).sortable('toArray', {attribute: 'value'});
票数 72
EN

Stack Overflow用户

发布于 2017-08-18 03:28:21

我看到了一些纯javascript的答案。它们可以工作,但要注意,它们可能不会按屏幕上可见的顺序返回项目。使用下面的代码,参见上面的jtsalva,将以正确的排序顺序返回项目。这让我困惑了一段时间,因为我想将新订单保存到数据库中,这样我就可以在有人停止的地方重新加载网格。

代码语言:javascript
复制
var result = $(this).sortable('toArray', {attribute: 'value'});
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1663012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档