20131222-Dom省市加载-第二十七天

[1]省市选择

<head>

<title></title>

<script type="text/javascript">

window.onload = function () {

//1.动态加载省份

var datas = {

"山东": ["青岛", "济南", "烟台"],

"山西": ["大同", "太原", "运城"],

"陕西": ["西安", "咸阳", "汉中"]

};

?

var defaultProvince = ‘山西‘;

?

loadProvince(datas, defaultProvince);

?

?

//2.根据默认选中的省份,动态加载城市信息

loadCity(datas, defaultProvince);

?

//2.为省份的select注册一个选择项改变事件,当选择项改变后动态改变"城市列表"

?

document.getElementById(‘s1‘).onchange = function () {

//1.获取当前选中项

//this.value指的就是,当前select中被选中的那个option的value值。

//alert(this.value);

//获取当前用户选中的省份

var currentProvince = this.value;

?

?

//根据省份信息加载城市

loadCity(datas, currentProvince);

};

};

?

?

//加载城市的方法

function loadCity(dict, dp) {

?

var s2Obj = document.getElementById(‘s2‘);

?

//重新加载之前清空一下s2

while (s2Obj.firstChild) {

s2Obj.removeChild(s2Obj.firstChild);

}

?

?

//根据默认选中省份,查找对应的城市信息

var city = dict[dp];

//将找到的城市数据加载到s2中

for (var i = 0; i < city.length; i++) {

var opt = document.createElement(‘option‘);

opt.innerHTML = city[i];

opt.value = city[i];

s2Obj.appendChild(opt);

}

}

?

//加载省份的方法

function loadProvince(dict, dp) {

?

var s1Object = document.getElementById(‘s1‘);

//遍历dict数据

for (var key in dict) {

//每遍历一条数据,则向selelct增加一个option

var opt = document.createElement(‘option‘);

opt.innerHTML = key;

opt.value = key;

//如果当前遍历的省份与"默认要选中的省份"相同

if (key == dp) {

//设置默认被选中的option

opt.selected = true;

}

?

//var opt = new Option(key,key);

s1Object.appendChild(opt);

}

}

</script>

</head>

<body>

省:

<select id="s1">

</select>

市:

<select id="s2">

</select>

</body>

时间: 2024-10-11 04:41:18

20131222-Dom省市加载-第二十七天的相关文章

setUserVisibleHint的使用.执行顺序和viewPager.setOffscreenPageLimit(0)不管用还是默认会加载第二个fragment

处理问题一:viewPager.setOffscreenPageLimit(0)不管用还是默认会加载第二个fragment的原因(源码解读); 处理问题二:setUserVisibleHint的使用场景和onCreate    onResume() 的执行顺序   这个情况适合多个fragment之间切换时统计,而非activity和fragment同时交换,现在越来越多的应用会使用viewpager+fragment显示自己的内容页,fragment和activity有很多共同点.但是frag

页面全部加载完毕和页面dom树加载完毕

dom树加载完毕 $(document).ready() //原生写法document.ready = function (callback) {            ///兼容FF,Google            if (document.addEventListener) {                document.addEventListener('DOMContentLoaded', function () {                    document.rem

jQuery和dom页面加载完成时触发的事件

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Insert title here</title> 6 <script type="text/javascript" src="js/jquery-1.8.3.js"></script> 7 <script

DWZ-JUI+UEditor第二次不显示,UEditor异步加载第二次不显示的解决方案

使用UEditor-1.4.3中遇到第一次跳转到使用UEditor的界面后,编辑器加载正常,返回后第二次再跳转到这个界面就出现UEditor无法正常加载, 也没百度到答案,看UEditor源码,发现这样一段: /** * @file * @name UE * @short UE * @desc UEditor的顶部命名空间 */ /** * @name getEditor * @since 1.2.4+ * @grammar UE.getEditor(id,[opt]) => Editor实例

window.onload 和 DOMContentLoaded区别及如何判断dom是否加载完毕

http://blog.allenm.me/2010/02/window-onload-和-domcontentloaded/ 其中使用IE不支持DOMContentLoaded,那么判断IE是否加载完DOM的一种方法:判断element的doScroll如果成功则说明DOM载入完成. http://www.cnblogs.com/haogj/archive/2013/01/15/2861950.html 见第4种方法

jquery的isReady方法(DOM是否加载完)

1 DOMContentLoaded = function() { 2 if ( document.addEventListener ) { 3 document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false ); 4 jQuery.ready(); 5 } else if ( document.readyState === "complete" ) { 6 // we're her

js dom元素加载完成执行

//dom ready执行 function ready(fn){ if(document.addEventListener){ document.addEventListener('DOMContentLoaded',function(){ document.removeEventListener('DOMContentLoaded',arguments.callee); fn(); }); }else if(document.attachEvent){ document.attachEven

JQuery源码解析-Dom加载过程

下面的几个工具方法都是和dom加载有关,所以先从dom加载开始. 用到的方法: isReady:DOM是否已经加载完(内部使用) readyWait():等待多少文件的计时器(内部使用) holdReady()::推迟DOM触发 ready():准备DOM触发 jQuery.ready.promise = function( obj ) {}检测dom的异步操作 先看一下jQuery和原生js加载方式有什么不同: $(function () { }); window.onload = funct

01JQuery笔记-------------------------DOM和jquery中页面加载方法和顺序

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script src="jquery-1.8.3.js"></script&g