2008年6月12日 星期四

抓出 dTree 使用中的 bug

昨晚戰了一晚, 到12點就不支倒床而睡, 就是跟這個 dTree 超連結在 myASP 無法運作的 BUG 糾纏.

下午仔細比較原版 dtree.js 與 myASP 中的檔案, 才發現賊蹤, 這不是原作者的錯, 是我當時改寫嵌入到 myASP 內時,在第 143 行處給人家加上偵測用的程式碼, 可能沒有成功又沒有移除, 結果形成禍害, 差點要放棄 dtree 這個小巧又強大的程式.

以下列出 141-145 行程式碼, 紫色的部份是另加的,

 else if ((!this.config.folderLinks || !node.url) && node._hc && node.pid != this.root.id)

  str += '<a href="javascript: ' + this.obj + '.o(' + nodeId + ');" class="node">';

 str += '<span>' + node.name + '</span>';

 if (node.url || ((!this.config.folderLinks || !node.url) && node._hc)) str += '</a>';

 str += '</div>';

-------------------------------------------------------------

之前有錯誤, 是在 span 裡加上 onclick=''javascript:document.all.selected_link_id.value='" + node.name + "'"

但是卻沒在網頁中放進一個隱藏欄位 selected_link_id, 害我一直找這個元件.

沒有留言 :