ホームページ >ウェブフロントエンド >jsチュートリアル >jsTree_javascriptスキルによる無限ツリーJSONデータの変換コード

jsTree_javascriptスキルによる無限ツリーJSONデータの変換コード

WBOY
WBOYオリジナル
2016-05-16 18:22:221177ブラウズ

jstree
* jsTree の json 文字列を取得するための無限再帰
*
* @paramparentId
* 親権限 ID


コードをコピーします


コードは次のとおりです:


$("# mytree").tree({
データ:{
タイプ:"json",
url :"${ctx}/user/power!list.do"

コードをコピー


コードは次のとおりです:


$("#demo2").tree({
data:{
type:"json",
json:[
{attributes:{id:"pjson_1" }、state:"open"、data:"ルートノード1"、子:[
{属性:{id:"pjson_2"},データ:{タイトル :"カスタムアイコン",アイコン:"../media/images/ok.png"}},
{属性:{id:"pjson_3"},データ:"子ノード2"}、
{属性:{id:"pjson_4"}、データ:「いくつかの他の子ノード」}
]}、
{属性:{id:"pjson_5"},data:"ルートノード2"}
]

コードをコピーします


コードは次のとおりです:


/ ***//**
*jsTree の JSON 文字列を取得するための無限再帰
*
*@paramparentId
*親権限 ID
*@return
*/
privateStringgetJson (longparentId)
{
//トップレベルをチェックアウト
リスト<アクション>アクション=actionManager.queryByParentId(parentId);
for(inti=0;i<<🎝>actions.size() ;<🎝>i<🎝><🎝>)<🎝>
{<🎝>
アクション<🎝>a<🎝>=<🎝>actions.get(i);<🎝>
//<🎝> には子ノードがあります<🎝>
if< 🎝>(a.getIshaschild()<🎝>==<🎝>1)<🎝>
{<🎝>
str<🎝 ><🎝>=<🎝>"{attributes:{id:" "<🎝><🎝><🎝>a.getAnid()<🎝>
<🎝><🎝>""}、状態: " open", data: ""<🎝><🎝><🎝> a.getAnname()<🎝><🎝><🎝>""<🎝>,";<🎝>
str<🎝><🎝 >=<🎝>"children:[";<🎝>
//<🎝>その子ノードを見つけます<🎝>
Listlist=actionManager。 queryByParentId(a.getAnid());
//その子ノード
を(intj=0;j{
アクションac= list.get(j);
//子ノードもあります (再帰呼び出し)
if(ac.getIshaschild()==1)
{
this.getJson(ac.getParentid());
}
else
{

str= "{attributes:{id:""ac.getAnid()
""},state:"open",data: ""ac.getAnname()
""""}"
if(jlist.size()-1)
{
str=",";
}
}
}
str= "]";
str="}";
if (i{
str=",";
}
}
}
returnstr;}呼び出し:

コードをコピー


コードは次のとおりです。


@org.apache.struts2 .convention.annotation.Action(results=
{@Result(name="success",location="/ main/user/action-list.jsp")})
publicStringlist( )
{
String str="[";
//ルートから開始
str=this.getJson(0);
str="]";
this.renderJson(str );
returnnull;jsTree_javascriptスキルによる無限ツリーJSONデータの変換コード} ここで、Action はメニュー クラスや権限クラスなどのエンティティです。 レンダリング:
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。