如何将额外的变量传递给Jquery UI可排序

时间:2012-08-06 18:42:46

标签: php jquery jquery-ui variables

我有一个包含multipe jquery可排序列表的页面,每个列表都有一个sp_id,如何将它传递给我的脚本?

  <script type="text/javascript">

$(function() {
    $(".sortable").sortable({ opacity: 0.6, cursor: 'move', update: function() {
        var order = $(this).sortable("serialize", "placeholder") + '&action=updateRecordsListings&sp_id=' + ???;            
     $.post("updatedb.php", order, function(order) {
          alert(order);
        });
        }
    });
});

我猜我应该在每个可排序的ul

中放入某种sp_id字段
 <ul class="sortable"
-- ?? Some field with the sp_id ?? -- 
 <li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
 </ul>

1 个答案:

答案 0 :(得分:3)

var variable_to_pass = 45;
$('.sortable').attr('spid', variable_to_pass);

将其放入文件准备或点击功能?或者如果你的HTML包括.sortable元素,只需将其添加到ul。猜猜这一切都取决于你从何而起如何处理。

<ul class="sortable" spid="<?php echo $myvariable; ?>">

获取通过jQuery发布的值..

var myVar = $('.sortable').attr('spid');

或者你也可以获得每个加载的索引并将它们添加到类似于LI的索引。

$('.sortable li').each(function(){
    $(this).attr('spid', $(this).index());
}

然后当你发布到你的ajax时,你会对所有这些函数运行一个类似的函数来获得所有spid值。如果你希望它有所帮助,它会变得非常错综复杂