jQuery EasyUI tree 使用拖拽時(shí)遇到的錯(cuò)誤小結(jié)
在我使用tree拖拽時(shí)總是失敗,控制臺(tái)輸出了很多錯(cuò)誤。
經(jīng)過(guò)跟蹤分析發(fā)現(xiàn)這是一個(gè)由于特殊配置導(dǎo)致的錯(cuò)誤。
原先錯(cuò)誤的代碼如下:
$('#tree').tree({ //省略其他 loadFilter: function(data, parent){ return data.rows; } });
由于我后臺(tái)返回值并不是一個(gè)直接適合tree使用的數(shù)據(jù),需要從中取出rows才可以,所以就有了這段代碼。
而 EasyUI 出錯(cuò)的原因就在于當(dāng)拖動(dòng)時(shí),拖動(dòng)方法中仍然會(huì)調(diào)用loadFilter方法,如下圖代碼:
EasyUI在前面的處理中,已經(jīng)將data處理為了數(shù)組,所以當(dāng)調(diào)用loadFilter方法時(shí),由于返回的data.rows,肯定是undefined,而不是數(shù)組,因此在后續(xù)對(duì)data操作時(shí)就會(huì)出錯(cuò),導(dǎo)致拖動(dòng)失敗,而且整棵樹(shù)都出現(xiàn)問(wèn)題。
解決的方法也很簡(jiǎn)單,將loadFilter方法改為可以適配默認(rèn)情況即可:
loadFilter: function(data, parent){ if($.isArray(data)){ return data; } return data.rows; }
主要就是判斷如果data是個(gè)數(shù)組就直接返回,否則仍然返回我自己的data.rows。
以上所述是小編給大家介紹的jQuery EasyUI tree 使用拖拽時(shí)遇到的錯(cuò)誤小結(jié),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery實(shí)現(xiàn)可用于博客的動(dòng)態(tài)滑動(dòng)菜單完整實(shí)例
這篇文章主要介紹了jQuery實(shí)現(xiàn)可用于博客的動(dòng)態(tài)滑動(dòng)菜單代碼,可實(shí)現(xiàn)jQuery基于鼠標(biāo)事件動(dòng)態(tài)操作頁(yè)面元素變換的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09Jquery實(shí)現(xiàn)搜索框提示功能示例代碼
數(shù)據(jù)量很大的情況下使用Ajax去實(shí)現(xiàn)真的不合適,于是想采用Jquery來(lái)實(shí)現(xiàn)方法,具體的示例代碼如下,有需求的朋友可以參考下希望對(duì)大家有所幫助2013-08-08jQuery實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07jquery實(shí)現(xiàn)奇偶行賦值不同css值
通常為了讓頁(yè)面呈現(xiàn)的更為美觀,我們喜歡在奇偶行加上不同的顏色2012-02-02通過(guò)JQuery將DIV的滾動(dòng)條滾動(dòng)到指定的位置方便自動(dòng)定位
本文為大家介紹下將DIV的滾動(dòng)條滾動(dòng)到其子元素所在的位置,方便自動(dòng)定位,需要的朋友可以參考下2014-05-05jquery.cvtooltip.js 基于jquery的氣泡提示插件
顯示氣泡提示的前提是,一定會(huì)有一個(gè)被提示的對(duì)象,默認(rèn)的位置是根據(jù)body來(lái)計(jì)算的,這樣的壞處就是如果頁(yè)面內(nèi)容發(fā)生了變化,而氣泡的位置沒(méi)有改變,導(dǎo)致提示目的失敗。2010-11-11