出處:http://higkoo.blog.sohu.com/52496479.html 胡楷的博客 轉(zhuǎn)載請(qǐng)注明原出處
/*此段代碼為:添加"樹狀"節(jié)點(diǎn)數(shù)據(jù),代碼源于*****項(xiàng)目,此碼僅添加數(shù)據(jù)到第三層。*/
/*前置條件:用戶已登錄并具有操作權(quán)限*/
/*思路:新增一級(jí)節(jié)點(diǎn)-->獲取一級(jí)ID-->添加二級(jí)節(jié)點(diǎn)-->展開一級(jí)節(jié)點(diǎn)-->獲取二級(jí)ID-->添加三級(jí)數(shù)據(jù)*/
/*說明:添加一級(jí)節(jié)點(diǎn)-->逐個(gè)讀取一級(jí)節(jié)點(diǎn)ID-->讀到一個(gè)一級(jí)節(jié)點(diǎn)就給它添加二級(jí)節(jié)點(diǎn)-->
二級(jí)節(jié)點(diǎn)添加完一次就讀一次ID-->讀一次二級(jí)節(jié)點(diǎn)直接添加三級(jí)節(jié)點(diǎn)*/
/*修改"樹狀"節(jié)點(diǎn)數(shù)據(jù)的代碼類似,Submit修改時(shí),要多建一個(gè)參數(shù)TreeCode*/
int i,j,k,p; //循環(huán)變量
int No1,No2,No3; //分別保存一、二、三級(jí)節(jié)點(diǎn)的個(gè)數(shù)
int M1,M2,M3; //分別定義一、二級(jí)節(jié)點(diǎn)的數(shù)量,三級(jí)節(jié)點(diǎn)不保存數(shù)據(jù),故未限制大小
char *MyID1[90],*MyID2[90],m[40]; //MyID1用于儲(chǔ)存所有一級(jí)節(jié)點(diǎn)數(shù)據(jù),m為臨時(shí)數(shù)組變量
/* MyID的長(zhǎng)度也大于M的長(zhǎng)度;m的長(zhǎng)度要大于ID的長(zhǎng)度+1 */
M1=30;M2=20;M3=10;
/*RootID名稱需要按模塊修改,Control里需要重新參數(shù)化*/
lr_save_string ("FindRootIDinWebResource","RootID");//根節(jié)點(diǎn)的ID,修改此處即可使用
lr_output_message ("當(dāng)前根節(jié)點(diǎn)的ID號(hào)為:%s",lr_eval_string ("{RootID}"));
for (i=1;i<=M1 ;i++ ) //添加M1個(gè)一級(jí)節(jié)點(diǎn)
{
lr_save_int(i,"L");
//#########添加一級(jí)節(jié)點(diǎn)
web_submit_data("{RootID}{L}");
} lr_output_message ("已添加%d個(gè)一級(jí)節(jié)點(diǎn)",M1);
web_reg_save_param("IDS", //獲取一級(jí)節(jié)點(diǎn)ID
"LB=value=\"",
"RB=\"",
"ORD=All",
LAST);
//#######展開根節(jié)點(diǎn)
web_url("{RootID}");
No1=atoi(lr_eval_string ("{IDS_count}")); //獲取ID的數(shù)量,保存在變更No1中
lr_output_message ("獲取一級(jí)節(jié)點(diǎn)的數(shù)量為: %d",No1);
if (No1>M1) { No1=M1;}//讓No1<=M1
for (i=1;i<=No1;i++) //將一級(jí)節(jié)點(diǎn)的ID寫入MyID1中
{
sprintf(m,"{IDS_%d}",i); //生成動(dòng)態(tài)字符串{IDS_i},存在變量m中************核心步驟
MyID1[i-1]=lr_eval_string (m); //讀取{IDS_i}參數(shù)對(duì)應(yīng)的值,保存到MyID1中****核心步驟
lr_output_message ("一級(jí)節(jié)點(diǎn)第%d共%d,m=%s即MyID1[%d]=,%s",i,No1,m,i-1,MyID1[i-1]);
lr_save_string (MyID1[i-1],"SubID");//將MyID1轉(zhuǎn)換為參數(shù){SubID}以便使用
for (j=1;j<=M2;j++ )//添加M2個(gè)二級(jí)節(jié)點(diǎn)
{
lr_save_int(j,"M");
//#######添加下級(jí)節(jié)點(diǎn)
web_submit_data("{RootID}{SubID}{M}");
} lr_output_message ("已添加%d個(gè)二級(jí)節(jié)點(diǎn)",M2);
web_reg_save_param("IDS2", //獲取二級(jí)節(jié)點(diǎn)ID
"LB=value=\"",
"RB=\"",
"ORD=All",
LAST);
//########展開選中節(jié)點(diǎn)
web_url("{RootID}{SubID}");
No2=atoi(lr_eval_string ("{IDS2_count}")); //獲取ID的數(shù)量,保存在變更No2中
lr_output_message ("獲取二級(jí)節(jié)點(diǎn)的數(shù)量為: %d",No2);
if (No2>M2) { No2=M2;}//讓No2<=M2
for (k=1;k<=No2;k++) //將二級(jí)節(jié)點(diǎn)的ID寫入MyID2中
{
sprintf(m,"{IDS2_%d}",k); //生成動(dòng)態(tài)字符串{IDS2_i},存在變量m中************核心步驟
MyID2[k-1]=lr_eval_string (m); //讀取{IDS2_i}參數(shù)對(duì)應(yīng)的值,保存到MyID2中****核心步驟
lr_output_message ("開始處理@二級(jí)節(jié)點(diǎn):第%d共%d,m=%s即MyID1[%d]=,%s",k,No2,m,k-1,MyID2[k-1]);
lr_save_string (MyID2[k-1],"SubID2");//將MyID1轉(zhuǎn)換為參數(shù){SubID}以便使用
lr_save_int(k,"N");
for (p=1;p<=M3;p++) //添加子節(jié)點(diǎn)
{
lr_save_int(p,"P");
//########添加三級(jí)節(jié)點(diǎn)
web_submit_data("{RootID}{SubID}{P}");
}lr_output_message ("當(dāng)前狀態(tài)@一級(jí)節(jié)點(diǎn)%d,二級(jí)節(jié)點(diǎn)%d:已添加%d個(gè)三級(jí)節(jié)點(diǎn)",i,k,M3);
}
}