我似乎无法处理我的排序列表。它们是列表元素的列表,每个列表元素都有一个循环DOM/mootools排序
窗体里面,我需要从中获取值。
Sortables.implement({
serialize: function(){
var serial = [];
this.list.getChildren().each(function(el, i){
serial[i] = el.getProperty('id');
}, this);
return serial;
}
});
var sort = new Sortables('.teams', {
handle: '.drag-handle',
clone: true,
onStart: function(el) {
el.fade('hide');
},
onComplete: function(el) {
//go go gadget go
order = this.serialize();
alert(order);
for(var i=0; i<order.length;i++) {
if (order[i]) {
//alert(order[i].substr(5, order[i].length));
}
}
}
});
然后将排序列表添加到与sort.addItems(li);
循环中的列表中。但是当我试图在可排序的onComplete声明之外获得可排序对象时,js说this.list是未定义的。
接近从另一个角度问题:
试图通过DOM环给了我同样不可思议的结果。下面是一些代码的萤火虫控制台结果:
var a = document.getElementById('teams').childNodes;
var b = document.getElementById('teams').childNodes.length;
try {
console.log('myVar: ', a);
console.log('myVar.length: ', b);
} catch(e) {
alert("error logging");
}
硬编码一个li元素到HTML(而不是通过JS被注入)改变长度== 1,并允许我访问单个元件,导致我相信访问通过DOM注入元件是问题(对于此方法)
试图与document.getElementById('teams').childNodes[i]
返回未定义获得的对象。
感谢您的帮助!