編程(Programming)是編定程序的中文簡稱,就是讓計算機代碼解決某個問題,對某個計算體系規定一定的運算方式,使計算體系按照該計算方式運行,并最終得到相應結果的過程。為了使計算機能夠理解(understand)人的意圖,人類就必須將需解決的問題的思路、方法和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算體系之間交流的過程就是編程。 【實例名稱】 菜單三級聯動菜單(1) 【實例描述】 三級聯動菜單是常用的一種選擇方式,通過這種方式,用戶可以更方便地選擇數據,同時還能降低選擇的失誤率。本例學習如何制作三級聯動菜單,實現方法是普通事件的捕獲。 【實例代碼】 <html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>標題頁-本站(www.xue51.com)</title>
<STYLE>
body { font-size: 11px; font-family:
Verdana;background:#ececec;color:#666666;}
select { font-size: 11px; font-family: Verdana;
vertical-align: middle;margin: 3px;background:#ececec;color:#666666;}
</STYLE>
<div id="myDiv"> </div>
<SCRIPT LANGUAGE="JavaScript" DEFER>
var cMenu = ["上海","北京","深圳","濟南"]
var cValue = ["shanghai","beijing","shenzhen","jinan"]
var aMenu = [["楊浦區","徐匯區","黃浦區","浦東新區"],
["豐臺區","海淀區"],["福田","寶安"],["市中","歷下"]]
var aValue = [["yp","xh","hp","pd"],["ft","hd"],["ft","ba"],["sz","lx"]]
var dMenu = [[["市光新村","工農三村"],["徐匯新村","徐匯高樓"],
["黃浦樓宇","外灘風景"],["浦東地鐵","浦東機場"]],[["豐臺體育館","造甲村"],
["亞運村"]],[["蓮花山","商報大廈"],["深圳寶安機場","寶安開發區"]],
[["山莊賓館","山莊大酒店"],["千佛山東門","千佛山醫院"]]] var oDiv = document.all.myDiv;
var ocMenu = document.createElement("<SELECT name='city'>");
//創建城市列表框
var oaMenu = document.createElement("<SELECT name='cityArea'>");
//創建區域列表框
var odMenu = document.createElement("<SELECT name='cityAddress'>");
//創建地址列表框
with(oDiv)appendChild(ocMenu),appendChild(oaMenu),appendChild(odMenu);
//將以上三個列表框添加到div中
createMainOptions();
createSubOptions(0);
createSub2Options(0,0); ocMenu.onchange = function() {//綁定城市下拉框的選擇事件
createSubOptions(this.selectedIndex);
createSub2Options(this.selectedIndex,oaMenu.selectedIndex);};
oaMenu.onchange = function() {//綁定區域下拉框的選擇事件
createSub2Options(ocMenu.selectedIndex,this.selectedIndex);}; function createMainOptions() {
for(var i=0;i<cMenu.length;i++)ocMenu.options[i] =
new Option(cMenu[i],cValue[i]);//填充城市列表框內容
}
function createSubOptions(j) {
with(oaMenu) {
length=0; //填充區域列表框內容
for(var i=0;i<aMenu[j].length;i++)oaMenu.options[i]
= new Option(aMenu[j][i],aValue[j][i]);
}
}
function createSub2Options(j,k) {
with(odMenu) {
length=0;
//填充地址列表框內容
for(var i=0;i<dMenu[j][k].length;i++)
odMenu.options[i] = new Option(dMenu[j][k][i]);
}
}
ocMenu[1].selected=true;
ocMenu.fireEvent("onchange");
</SCRIPT>
</head>
<body>
</body>
</html>
【運行效果】  【難點剖析】 本例中使用數組定義了3個級別下拉框的內容,然后使用“createElement”動態創建了3個下拉框,并使用“appendChild”將下拉框添加到指定的div層中。為了實現聯動效果,還動態設置了這3個下拉框的“onchange”事件。 【源碼下載】 為了JS代碼的準確性,請點擊:三級聯動菜單 進行本實例源碼下載
使用編程語言寫的程序,由于每條指令都對應計算機一個特定的基本動作,所以程序占用內存少、執行效率高。 |