天天看點

樹頁面參數傳遞方法-樹标簽展開的參數傳遞

樹頁面參數傳遞方法-樹标簽展開的參數傳遞

bboss 項目檔案清單:

https://sourceforge.net/projects/bboss/files/

bboss taglib 1.0.2 釋出 ,下載下傳位址:

https://sourceforge.net/projects/bboss/files/Tag%20framework/bboss-taglib-1.0.2.zip

如果樹的展開模式設定為動靜結合時,那麼在第一次展開從未展開的樹節點時就存在一個參數傳遞的問題,樹标簽庫中提供了一個param标簽來解決這個問題,下面舉例來說明param标簽的使用方法:

首先有一個樹的jsp頁面checkboxtree.jsp,與樹相關的代碼為:

                       <tree:tree tree="TreeWithContextMenu"

                                    node="TreeWithContextMenu.node"

                                    imageFolder="tree_images"

                                    collapse="true"

                                          includeRootNode="true"                   

                                          href="testtreenode.jsp"                         

                                          target="_blank"

                                          mode="static-dynamic"

                                          >

                                          <!--

                                                   樹的展開和折疊時  保持頁面的參數

                                          -->                       

                                 <tree:param name="oid"/>

                                  <tree:checkbox name="test_checkbox"/>

                                          <tree:treedata treetype="test.tree.TreeWithContextMenu"

                                            scope="request"

                                            rootid="root" 

                                            rootName="測試樹"

                                            expandLevel="2"

                                            showRootHref="true"

                                            needObserver="false"

                                            refreshNode="false"

                                            enablecontextmenu="true"

                                            />

</tree:tree>

用下面的方式送出請求:checkboxtree.jsp?oid=testparamtransfer來展示樹。

從jsp代碼中可以看出expandLevel="2",是以樹預設隻展開兩級,展開模式為mode="static-dynamic",即動靜結合模式,當第一次展開第3級時,樹的展開機制就會發出一個checkboxtree.jsp的請求來擷取第3級資料,是以如果不保持oid參數的話就會使該參數丢失,導緻樹無法展示,我們在樹的代碼中看到<tree:tree>内嵌了一個标簽:

<tree:param name="oid"/>

這個param标簽就是用來保持樹頁面的參數的,保證樹頁面在動态展開節點時不會丢失頁面請求參數,param标簽的屬性name對應于請求參數的名稱oid,如果有多個參數隻需要将每個參數以以下方式保持即可:

<tree:param name="oid1"/>

<tree:param name="oid2"/>

等等。