特點:通用性強、實現了script和html分離
一、檔案及原始碼
cs.js
用函式和類兩種方法實現,呼叫時只要呼叫一種就可以了。
if (isonchange == null)
cascadeselect.onchange = function ();
cascadeselect.getattr = function (attrname) ;
cascadeselect.getelementbyid = function (id) ;
cascadeselect.setdisplaystyle = function(value)
var subelement = this.getelementbyid(this.getattr("subelement"));
if (subelement != undefined)
};nodes.getchildnodesbyparent = function (parent)
for (var i = 0; i < nodes.length; i++)
}return childnodes;
}if(!isonchange)
var childnodes = nodes.getchildnodesbyparent(parent);
for (var i = 0; i < childnodes.length; i++)}}
if (cascadeselect.options.length > 0)
} else
}/**
* 以類的方法實現連動
*/function cascadeselect(element, parent, nodes)
this.build(element, parent, false);
}cascadeselect.prototype.getelementbyid = function (id) ;
cascadeselect.prototype.getattribute = function (element, attrname) ;
cascadeselect.prototype.getchildnodesbyparent = function (parent)
for (var i = 0; i < this.nodes.length; i++)
}return childnodes;
}cascadeselect.prototype.setdisplaystyle = function(element, value)
var subelement = this.getelementbyid(this.getattribute(element, this.attributes["subelement"]));
if (subelement != undefined)}};
cascadeselect.prototype.build = function (element, parent, isonchange)
if(!isonchange)
var childnodes = this.getchildnodesbyparent(parent);
for (var i = 0; i < childnodes.length; i++)}}
if (element.options.length > 0)
} else
}//-->
二、demo加說明
demo_cs2.htm
三、不足的地方
1、onchange事件被重定義了,如果想在onchage執行其它的東東,想辦法吧。:)
2、修改時的回顯
Yii 連動下拉列表,可多級哦
視 件getmemgroup array class s ipt w 120 empty 請選擇會員組 ajax array type get url ccontroller createurl cmptemplates getmemtype update cmptemplates zmg ids ...
JS連動下拉框的實現
以前學。net的時候 下拉框連動只要設定一下就好了,現在在用php開發,沒有這個功能,只能自己用js寫了,這個應該比較經常用到。上面的 中 subcat new array 是用php模板技術先把城市的繫結輸出到頁面,自己自動生成陣列 然後在html中新增呼叫上面的 即可 例 province 這是...
XML卷之實戰錦囊(4) 選單連動
動機 現在我們做個在ie裡應用 xml的乙個小例子 解決雙下拉列表的連動問題。大家最常見的可能就是選取省份後改變城市選項的例子了,那我們就來嘗試著用 xml來完成吧。以前介紹的一些功能我是直接用xml xsl檔案來完成的,大家可能還不是很熟悉它的用法,所以我這次就用hmtl xml來做,希望能夠讓大...