2
var allRows = this.getTbodyEl().rows;
for (var i = allRows.length - 1; i >= 0; i--){
var thisRowID = allRows[i].id;
// Clean up any existing Drag instances
if (myDTDrags[thisRowID]) {
myDTDrags[thisRowID].unreg();
delete myDTDrags[thisRowID];
}
// Create a Drag instance for each row
myDTDrags[thisRowID] = new YAHOO.util.DDProxy(thisRowID);
};
我不明白爲什麼,但上面的代碼沒有產生我的表中的每一行DDProxy對象。我已經驗證了DDProxy代碼是所有加載,並通過將一個字符串引用一個DOM元素正常運行:YUI:字符串工作,但包含字符串的var不?
myDTDrags[thisRowID] = new YAHOO.util.DDProxy('yui-rec30');
這使得預期中的相應行拖動!我還使用typeof驗證了thisRowID的值確實是'string'類型的值,並且該字符串包含適當行元素的id。
我錯過了什麼?
迷人。如果是我,我會看到如果將「thisRowID」設置爲「new String(allRows [i] .id)'會發生什麼事情,但我很奇怪。 – Pointy 2010-02-22 23:58:19