日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

使用JavaScript完成省市聯(lián)動(dòng)效果

 路人甲Java 2021-10-26

省市聯(lián)動(dòng)效果

技術(shù)分析

什么是DOM: Document Object Model : 管理我們的文檔,增刪改查規(guī)則
【HTML中的DOM操作】

一些常用的 HTML DOM 方法:
getElementById(id) - 獲取帶有指定 id 的節(jié)點(diǎn)(元素)
appendChild(node) - 插入新的子節(jié)點(diǎn)(元素)
removeChild(node) - 刪除子節(jié)點(diǎn)(元素)

一些常用的 HTML DOM 屬性:
innerHTML - 節(jié)點(diǎn)(元素)的文本值
parentNode - 節(jié)點(diǎn)(元素)的父節(jié)點(diǎn)
childNodes - 節(jié)點(diǎn)(元素)的子節(jié)點(diǎn)
attributes - 節(jié)點(diǎn)(元素)的屬性節(jié)點(diǎn)

查找節(jié)點(diǎn):
getElementById() 返回帶有指定 ID 的元素。
getElementsByTagName() 返回包含帶有指定標(biāo)簽名稱的所有元素的節(jié)點(diǎn)列表(集合/節(jié)點(diǎn)數(shù)組)。
getElementsByClassName() 返回包含帶有指定類名的所有元素的節(jié)點(diǎn)列表。

增加節(jié)點(diǎn):
createAttribute() 創(chuàng)建屬性節(jié)點(diǎn)。
createElement() 創(chuàng)建元素節(jié)點(diǎn)。
createTextNode() 創(chuàng)建文本節(jié)點(diǎn)。
insertBefore() 在指定的子節(jié)點(diǎn)前面插入新的子節(jié)點(diǎn)。
appendChild() 把新的子節(jié)點(diǎn)添加到指定節(jié)點(diǎn)。

刪除節(jié)點(diǎn):
removeChild() 刪除子節(jié)點(diǎn)。
replaceChild() 替換子節(jié)點(diǎn)。

修改節(jié)點(diǎn):
setAttribute() 修改屬性
setAttributeNode() 修改屬性節(jié)點(diǎn)

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>

/*動(dòng)態(tài)添加 :   <p>文本</p> */
function dianwo(){
var div = document.getElementById("div1");
//創(chuàng)建元素節(jié)點(diǎn)
var p = document.createElement("p");  // <p></p>
//創(chuàng)建文本節(jié)點(diǎn)
var textNode = document.createTextNode("文本內(nèi)容");//  文本內(nèi)容

//將p 和文本內(nèi)容關(guān)聯(lián)起來
p.appendChild(textNode);  //  <p>文本</p> 

//將P添加到目標(biāo)div中
div.appendChild(p);
}

</script>
</head>
<body>
<input type="button" value="點(diǎn)我,添加P" onclick="dianwo()" />
<!--一會(huì)動(dòng)態(tài)的往這個(gè)Div中添加節(jié)點(diǎn)-->
<div id="div1">

</div>
</body>
</html>

代碼實(shí)現(xiàn)

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script>
/*
準(zhǔn)備工作 : 準(zhǔn)備數(shù)據(jù)
*/
var provinces = [
["深圳市","東莞市","惠州市","廣州市"],
["長沙市","岳陽市","株洲市","湘潭市"],
["廈門市","福州市","漳州市","泉州市"]
];
/*
1. 確定事件:  onchange
2. 函數(shù): selectProvince()
3. 函數(shù)里面要搞事情了
得到當(dāng)前操作元素
得到當(dāng)前選中的是那一個(gè)省份
從數(shù)組中取出對(duì)應(yīng)的城市信息

動(dòng)態(tài)創(chuàng)建城市元素節(jié)點(diǎn)
添加到城市select中

*/
function selectProvince(){
var province = document.getElementById("province");
//得到當(dāng)前選中的是哪個(gè)省份
//alert(province.value);
var value = province.value;
//從數(shù)組中取出對(duì)應(yīng)的城市信息
var cities = provinces[value];
var citySelect = document.getElementById("city");
//清空select中的option
citySelect.options.length = 0;

for (var i=0; i < cities.length; i++) {
//alert(cities[i]);
var cityText = cities[i]; 
//動(dòng)態(tài)創(chuàng)建城市元素節(jié)點(diǎn)   <option>東莞市</option>

//創(chuàng)建option節(jié)點(diǎn)
var option1 = document.createElement("option"); // <option></option>
//創(chuàng)建城市文本節(jié)點(diǎn)
var textNode = document.createTextNode(cityText) ;// 東莞市

//將option節(jié)點(diǎn)和文本內(nèi)容關(guān)聯(lián)起來
option1.appendChild(textNode);  //<option>東莞市</option>

//添加到城市select中
citySelect.appendChild(option1);
}

}

</script>
</head>
<body>
<!--選擇省份-->
<select onchange="selectProvince()" id="province">
<option value="-1">--請選擇--</option>
<option value="0">廣東省</option>
<option value="1">湖南省</option>
<option value="2">福建省</option>
</select>
<!--選擇城市-->
<select id="city"></select>
</body>
</html>

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多