实例——省市区三级联动 & 还可以输入字符统计
1 省市区三级联动
html代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>三级联动3</title>
<script src="js/area3.js"></script>
</head> <body>
省:<select id="province"> </select>
市:<select id="city">
<option>请选择</option>
</select>
区:<select id="areas">
<option>请选择</option>
</select>
</body> </html>
js代码:
var data = [
[1,"山东省",0],
[2,"江苏省",0],
[11,"济南市",1],
[12,"青岛市",1],
[13,"淄博市",1],
[21,"南京市",2],
[22,"宿迁市",2],
[131,"张店区",13],
[132,"淄川区",13],
[133,"博山区",13],
[111,"历城区",11],
[112,"历下区",11]
]; window.onload=function(){
var province=document.getElementById('province'); //省的select
var city=document.getElementById('city'); //市的select
var areas=document.getElementById('areas'); //区的select add_data(province,0); //添加省 province.onchange=function(){ //省改变时,传入市,传入省的value
add_data(city,this.value)
}; city.onchange=function(){ //市改变时,传入区,传入市的value
add_data(areas,this.value)
}; } function add_data(obj,vid){ //传入两个参数:对象,值
areas.innerHTML='<option value="-1">请选择</option>'; //点击省时,把区的数据清掉
var str='<option value="-1">请选择</option>';
for(var i=0; i<data.length; i++){
if(data[i][2] == vid){
str+='<option value="'+data[i][0]+'">'+data[i][1]+'</option>';
}
}
obj.innerHTML=str;
}
2 还可以输入的字符数统计
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>还可以输入</title>
</head>
<body>
<p>还可以再输入<span id="num">10</span>个字符</p>
<textarea id="my_input" rows="10" maxlength="10"></textarea> <script>
var num=document.getElementById('num');
var inbox=document.getElementById('my_input'); inbox.onkeyup=function(){
num.innerHTML=10-this.value.length;
}
</script> </body>
</html>
收获:
1 数据处理的能力特别重要
2 能让客户选择的,就不要让客户填写
3 给select添加内容时,虽然他是表单元素,但是可以使用innerHTML,
可以这样记忆:双标签用innerHTML,单标签用value
4 select的值改变,使用onchange事件
5 option没有设value时,取其内容值
6 当一些代码相同时(出现拷贝代码的情况),就需要优化了。可以定义一个函数,然后通过传不同的参数,实现相应功能。
实例——省市区三级联动 & 还可以输入字符统计的更多相关文章
- 用jsp实现省市区三级联动下拉
jsp+jquery实现省市区三级联动下拉 不少系统都需要实现省市区三级联动下拉,像人口信息管理.电子商务网站.会员管理等,都需要填写地址相关信息.而用ajax实现的无刷新省市区三级联动下拉则可以改善 ...
- 省市区三级联动 pickerView
效果图 概述 关于 省市区 三级联动的 pickerView,我想大多数的 iOS 开发者应该都遇到过这样的需求.在遇到这样的需求的时候,大多数人都会觉的这个很复杂,一时无从下手.其实真的没那么复杂. ...
- JS省市区三级联动
不需要访问后台服务器端,不使用Ajax,无刷新,纯JS实现的省市区三级联动. 当省市区数据变动是只需调正js即可. 使用方法: <!DOCTYPE html><html>< ...
- ajax省市区三级联动
jdbc+servlet+ajax开发省市区三级联动 技术点:jdbc操作数据库,ajax提交,字符拦截器,三级联动 特点:局部刷新达到省市区三级联动,举一反三可以做商品分类等 宗旨:从实战中学习 博 ...
- PHPOffice/PHPExcel生成省市区三级联动的excel表格
最近公司需要用到一个省市区三级联动的excel表格,但是数据都在数据库,又太多,人工不好制作,就让我这个phper来帮忙啦. 主要用到的是excel的定义名称,数据验证.其中数据验证的列表只能是一列或 ...
- vue省市区三级联动
仿照小米之家做的一个省市区三级联动,先上代码: HTML: <template> <section class="myAddress"> <secti ...
- 省市区三级联动——思路、demo、示例
说明(2017-12-13 11:03:58): 1. 这个功能应该是注册的时候非常.常用的了,不过现在都是微信登录,手机端自动获取位置什么的,可能就网站还用用吧! 2. 这个东西的难点在于统计各地省 ...
- JS实现年月日三级联动+省市区三级联动+国家省市三级联动
开篇随笔:最近项目需要用到关于年月日三级联动以及省市区三级联动下拉选择的功能,于是乎网上搜了一些做法,觉得有一些只是给出了小的案例或者只有单纯的js还不完整,却很难找到详细的具体数据(baidu搜索都 ...
- 【JavaScript&jQuery】省市区三级联动
HTML: <%@page import="com.mysql.jdbc.Connection"%> <%@ page language="java&q ...
随机推荐
- bzoj 3527: [Zjoi2014]力 快速傅里叶变换 FFT
题目大意: 给出n个数\(q_i\)定义 \[f_i = \sum_{i<j}{\frac{q_iq_j}{(i-j)^2}} - \sum_{i>j}\frac{q_iq_j}{(i-j ...
- java定时器,留着用
说明:该定时器作用是 设定定时器首次执行的时间firstTime和执行间隔period,如firstTime=2015-3-25 9:00:00,period=24小时,若程序启动时,已经超过firs ...
- Unity查找Editor下Project视图中特定的资源
[MenuItem("Tools/Check Text Count")] public static void CheckText () { //查找指定路径下指定类型的所有资源, ...
- 2-7 Flutter开发工具使用指南
这里选择用哪个模拟器运行 Mac系统下可以通过这个Open IOS Siumlator打开IOS模拟器 debug用来调试的 可以创建新的模拟器 选择安卓模拟器的版本 这是sdk的配置 点开就是打开了 ...
- [golang] Glide 包管理工具,在windows10 64位系统上的bug修复方案
bug重现 [ERROR] Unable to export dependencies to vendor directory: Error moving files: exit status 1. ...
- 图解Mysql语句的执行过程
当我们希望Mysql能够高性能的执行查询语句时,其实最好的方法就是搞清楚Mysql到底是怎样执行查询的.一旦理解这一点,很多的查询优化工作实际上就是遵循一些原则让查询优化器能够按照预想的合理的方式运行 ...
- android fragment ontouch 事件
由于fragment是存在于activity之中的,所以触摸事件会被activity首先得到. 为了在fragment中执行ontouch方法,需要做如下处理: mFragment = new Tab ...
- ACM-ICPC2018南京网络赛 AC Challenge(一维状压dp)
AC Challenge 30.04% 1000ms 128536K Dlsj is competing in a contest with n (0 < n \le 20)n(0<n ...
- LeetCode: 669 Trim a Binary Search Tree(easy)
题目: Given a binary search tree and the lowest and highest boundaries as L and R, trim the tree so th ...
- 在Packstack环境手动安装OVN
安装OpenStack(allinone)环境 ### 参考"Packstack使用"章节安装,但是不要配置外网网络 安装OVN组件 ### 控制节点 # yum install ...