javascript高級(jí)組合查詢控件(0.4更新)
相對(duì)之前的版本,代碼方面進(jìn)行比較大的修改,主要內(nèi)容如下:
1.把html與js分離了。
2.字段信息由原來的數(shù)組改為對(duì)象的方式,如:



3.抽象了部分生成條件的函數(shù),這樣對(duì)數(shù)據(jù)庫日后的擴(kuò)展有利,只要修改highquery.js內(nèi)的HQConfig的dialect就可以實(shí)現(xiàn)生成不同數(shù)據(jù)庫的sql,如:







這個(gè)會(huì)自動(dòng)引入oracle.js,生成的sql就會(huì)是oracle數(shù)據(jù)庫能通過的,如下面的日期:

如果想用sqlserver數(shù)據(jù)庫,只要把dialect改為sqlserver就可以了!現(xiàn)在只支持sqlserver和oracle,呵呵!當(dāng)然還可以自行擴(kuò)展!
4.新增了一個(gè)實(shí)現(xiàn)關(guān)聯(lián)表選擇的接口,如下圖:

上面的選擇框必須獨(dú)立去實(shí)現(xiàn),然后在新增字段時(shí)加入一個(gè)方法名,如"choiceCategory":

最后,實(shí)現(xiàn)這個(gè)方法,如:






必須返回兩個(gè)值組成的數(shù)組,可以查看源碼中的choicelist.htm。
呵呵!看起來比較煩,但對(duì)于一個(gè)關(guān)聯(lián)表上是有大量數(shù)據(jù)時(shí),這種方式比較好的,原因是開發(fā)人員可以自行去實(shí)現(xiàn)自已的選擇框,比如加上查詢過濾條件或者是分頁之類的,這樣用起來就更加靈活了。
當(dāng)然,對(duì)于關(guān)聯(lián)表上是少量數(shù)據(jù),又或者那種很少變化的業(yè)務(wù)字典,如狀態(tài)(啟用,停用);這種類型采用上面的方式就真的實(shí)在太麻煩了,由于時(shí)間的問題,這個(gè)版本還沒實(shí)現(xiàn)優(yōu)化這方面,只能留到下一版本了!
源碼:highquery0.4.rar
posted on 2008-07-30 19:03 codeslave 閱讀(2433) 評(píng)論(4) 編輯 收藏 所屬分類: script