Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery UI可排序-更新后同步阵列(模型)_Javascript_Jquery_Arrays_Jquery Ui - Fatal编程技术网

Javascript jQuery UI可排序-更新后同步阵列(模型)

Javascript jQuery UI可排序-更新后同步阵列(模型),javascript,jquery,arrays,jquery-ui,Javascript,Jquery,Arrays,Jquery Ui,假设我有一个包含数据的数组,它可能来自Ajax(但这里不需要这样做) 使用该数组生成UL元素的内容,使用jqueryui使UL可排序 我希望在客户端对阵列排序之后,阵列的顺序与UL保持同步 有没有一种优雅的方法 var位置=[ {名称:'点0',位置:[50.8674162,4.3772933]}, {名称:'点1',位置:[50.8135113,4.3247394]}, {名称:'点2',位置:[50.8771732,4.3544551]}, {名称:'点3',位置:[50.8460485,

假设我有一个包含数据的数组,它可能来自Ajax(但这里不需要这样做)

使用该数组生成UL元素的内容,使用jqueryui使UL可排序

我希望在客户端对阵列排序之后,阵列的顺序与UL保持同步

有没有一种优雅的方法

var位置=[
{名称:'点0',位置:[50.8674162,4.3772933]},
{名称:'点1',位置:[50.8135113,4.3247394]},
{名称:'点2',位置:[50.8771732,4.3544551]},
{名称:'点3',位置:[50.8460485,4.3664706]}
];
函数generateUl(){
var内容=“”;
对于(位置中的var i){
content+='
  • '+locations[i].name+'('+locations[i].location.toString()++')
  • '; } $('#points').html(内容); } $(文档).ready(函数(){ generateUl(); $(“#点”)。可排序({ 更新:功能(事件、用户界面){ //$('#点li')。每个(函数(e){ //}); //因此,我希望在每次更新后都能看到此显示更改,并使顺序匹配 $('#display').html(JSON.stringify(locations)); } }); });
    
    

      对代码进行一些更改,以获得所需内容:

      var位置=[
      {名称:'点0',位置:[50.8674162,4.3772933]},
      {名称:'点1',位置:[50.8135113,4.3247394]},
      {名称:'点2',位置:[50.8771732,4.3544551]},
      {名称:'点3',位置:[50.8460485,4.3664706]}
      ];
      函数generateUl(){
      对于(位置中的var i){
      li=$('
    • '+locations[i].name+'('+locations[i].location.toString()++')
    • '); li.数据('d',位置[i]) $(“#点”)。追加(li); } } $(文档).ready(函数(){ generateUl(); $(“#点”)。可排序({ 更新:功能(事件、用户界面){ new_locations=$(this).find('li').map(函数(i,el){ 返回$(el).data('d')) }).get() $('#display').html(JSON.stringify(new#u locations)); } }); });
      
      

        2k stackoverflow上的声誉仍然没有使用代码段?你应该感到羞愧:)谢谢,太好了。我也在做一些有数据id的东西。这个映射函数正是我需要的