【发布时间】:2011-11-05 00:38:07
【问题描述】:
我正在使用 jQuery 1.4 和 jQuery UI 可排序,我的问题是我在同一页面中有两个可排序的实现。
这是一个有效的方法:
catlst.sortable({
handle:'div.ordenador',
update: function(event,ui) {
var nx = ui.item.next();
var pr = ui.item.prev();
var im = ui.item;
var catid = im.parent().parent().attr('catid');
var direc = nx && nx.text() ? 'antes' : 'despues';
$.post('curso/ordenar',
'tipo='+catid+
'&id='+im.attr('actividad_id')+
'&direc='+direc+
'&refid='+(direc=='antes'?nx.attr('actividad_id'):pr.attr('actividad_id')),null);
}
});
可以排序成功,但是第二个:
$('#clases').sortable({
handle: 'div.ordenador-carpeta',
axis: 'y',
update: function(event,ui) {
var nx = ui.item.next();
var pr = ui.item.prev();
var im = ui.item;
var direc = nx && nx.text() ? 'antes' : 'despues';
}
});
在这两种情况下,#clases 和 'catlst' 都是 div,里面只有 div。
第二个代码根本不起作用,我可以拖放,页面布局会丢失,就像刚刚删除并重新加载页面一样。
另外,Firebug 给了我这个错误: 尝试在已清除的范围内运行 compile-and-go 脚本 jquery.ui.js 178号线
这让我发疯了,我应该提供更多信息吗?
【问题讨论】:
-
哦,我终于解决了,问题是一个 在 sortables 项目中,所以每次他们改变它的位置,document.write 过去工作并破坏页面,我知道使用它不是一个好主意,事实上我正在从我的 js 中删除它们。我希望它可以帮助其他人。
-
请自行回答您的问题并接受。其他人会立即看到有一个解决方案。 stackoverflow.com/faq#questions
标签: javascript jquery user-interface jquery-ui-sortable