Jquery Sortable .toArray脚本错误

时间:2013-06-27 12:32:57

标签: javascript jquery jquery-ui jquery-ui-sortable

有人可以,为了上帝的爱,告诉我为什么这样有效:

$(document).ready(function(){
  $('#clause_sort').sortable({
  update: function(event, ui) {
    var clauseOrder = $(this).sortable('toArray').toString();
        alert(clauseOrder);     
        }
        });         
}); // End of ready

而这一点,莫名其妙地没有:

$(document).ready(function(){

$('#clause_sort').sortable();

$("#generate").click(function(){
var clauseOrder = $("'#clause_sort").sortable('toArray').toString();
alert(clauseOrder);
});

}); // End of ready

我没有包含HTML,但#clause_sort是一组嵌套的Div(确实可以排序)而#generate是一个按钮。在第一个例子中,一切正常,当订单改变时,它会立即生成一个包含子句顺序的字符串的警报。

但是,当用户点击按钮时,我只需要订单。根据我在该主题上可以找到的所有内容,第二个代码应该可行。而是单击该按钮会生成脚本错误。

我考虑过简单地坚持使用第一种方法,并且拥有一个不断更新的全局变量。这个问题是:1)用户可能根本不改变列表的顺序(因此变量保持未设置状态); 2)它让我疯狂为什么它不起作用,所以无论如何我想要一个答案!

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

替换为:

var clauseOrder = $("#clause_sort").sortable('toArray').toString(); 
// remove redundant quote