這幾天又花時間做了一個,使用起來效果更好,因為沒有時間寫更多的幫助,大家慢慢研究代碼吧!
最近項目中要用到下拉多選樹,有人從網上找了一個,用了一段時間后發現有一些問題,一個頁面中只能有一個下拉樹,我就研究其中的代碼,自己重新寫了一個下拉頁面的腳本,能夠在一個頁面中使用多個下拉樹。
其原理其實就是用DIV的隱藏的顯示來實現下拉頁面,頁面放在了DIV里的一個FRAME里,用JS來控制這些顯示與隱藏,廢話不多說了,把源碼給大家公布一下。代碼中如有不足之處敬請大家指出。
給大家說一下它的用法,首先在頁面里加上JS文件:
在需要下拉樹的地方寫一個DIV:
JS里用到了兩個圖片,你可以把這兩個圖片放到主頁面同一層的路徑下,或者直接修改JS源文件,把它指向你自己的路徑。
目標頁面需要加一些東西,寫一個函數:
function getUserData(tag){
var ids = tree1.getAllChecked();
if(ids.length==0)return "";
if(tag=="id")
return tree1.getAllChecked();
else if(tag=="name"){
var idArray = ids.split(",");
var names=tree1.getItemText(idArray[0]);
for(i=1;i names += "," + tree1.getItemText(idArray[i]);
return names;
}
}
其中的返回值可以根據你的頁面要實現的功能改動。
在頁面的onload事件中創建:dropDownPage.createNewPage("2.htm","tree1","text1",200);
這個函數中的參數給大家詳細解釋一下,
第一個是下拉時出來的頁面的URL;
第二個是你創建的DIV的ID;
第三個是你用來存放頁面返回ID的FORM的字段的(id或name都行,如果你的主頁面里沒有這樣的字段,JS會幫你創建它);
第四個是寬度,單位是象素。