gpt4 book ai didi

javascript - jQuery UI 可排序不使用自定义属性序列化

转载 作者:行者123 更新时间:2023-11-29 16:56:49 25 4
gpt4 key购买 nike

我正在使用可通过 data-id 属性排序的 jQuery UI。我知道您可以将 sortable('serialize')id="row_4" 之类的东西一起使用,这对我有用,但我需要这样做。

  • sortable('serialize', {attribute: 'data-id'}) 给出一个空字符串
  • sortable('toArray'), {attribute: 'data-id'}) 给出预期的输出
<div data-sortable="link/to/handler">
<div data-id="1">1</div>
<div data-id="2">2</div>
<div data-id="3">3</div>
<div data-id="4">4</div>
<div data-id="5">5</div>
</div>
var container = $('[data-sortable]');
container.sortable({
items : "> [data-id]",
update : function() {
var postData = container.sortable('serialize', {
attribute: 'data-id'
});
alert(postData); // Nothing
var postData2 = container.sortable('toArray', {
attribute: 'data-id'
});
alert(postData2); // 1,3,4,5,2 etc.
}
});

fiddle :http://jsfiddle.net/ogzw5pL2/

这是怎么回事?我 98% 确定这以前有效。

最佳答案

serialize 需要keyvalue,但您可以使用参数来覆盖默认行为并获得想要的结果。

在你的情况下,你可以设置你想要的attributekeyexpression,以便它采用data-id 并使用定义的 key 和适当的值构建字符串。像这样:

           var postData = container.sortable('serialize', {
attribute: 'data-id',//this will look up this attribute
key: 'order',//this manually sets the key
expression: /(.+)/ //expression is a RegExp allowing to determine how to split the data in key-value. In your case it's just the value

});

fiddle :http://jsfiddle.net/c2o3txry/

关于javascript - jQuery UI 可排序不使用自定义属性序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31839235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com