javascript中select下拉框的用法总结


Posted in Javascript onJanuary 07, 2016

本文针对开发项目中遇到的问题,进行了汇总
问题1:如何选择select的option里面的值?
首先会用到一个方法 onchange();这个方法主要用于触发,选择框内容改变时间

实现代码:

<!doctype html>
<html>
<head lang="en">
 <meta charset="UTF-8">
</head>
<body>
 <select onchange="test(event)">
  <option>安静</option>
  <option>晴天</option>
  <option>七里香</option>
 </select>
 <script type="text/javascript">
  function test (e) {
   var e = event ? event : window.event;
   alert(e.target.value);
  }
 </script>
</body>
</html>

javascript中select下拉框的用法总结

问题2:可是在开发中,我们一般选择了内容只是为了显示,而真正要做的是和后台进行交互数据传输,这时候,我们为了尽可能减少http数据传输,所以一般会传 id 等作为数据传输标志,如何做?
开发中,option一般都是动态创建的,那么这时候,我们只需要给你动态创建一个自定义属性。那么如何获取自定义属性呢?

<!doctype html>
<html>
<head lang="en">
 <meta charset="UTF-8">
</head>
<body>

 <select onchange="test(event)" id="sel"></select>

 <script type="text/javascript">
  //定义内容的json数据,一般从后台获取
  var data = [
   {
    name: '晴天',
    id: '1'
   },
   {
    name: '安静',
    id: '2'
   },
   {
    name: '七里香',
    id: '3'
   }
  ];

  createOption('sel',data);
  //创建option
  function createOption(parentId, data){
   var parentId = document.getElementById(parentId);
   for(var i=0; i<data.length; i++){
    var opt = document.createElement('option');
    //设置option的值
    opt.innerHTML = data[i].name;
    //定义option的自定义值
    opt.setAttribute('dataid', data[i].id);
    parentId.appendChild(opt);
   }
  }
  //选取自定义属性的方法
  function test (e) {
   var e = event ? event : window.event;
   var target = e.target;
   var index = target.selectedIndex;
   alert("我的id="+target[index].getAttribute('dataid'));
  }
 </script>
</body>
</html>

结果图如下:

javascript中select下拉框的用法总结

如果大家还想深入学习,可以点击jquery下拉框效果汇总、JavaScript下拉框效果汇总进行学习。

这就是我在开发中遇到的问题,希望可以对大家的学习有所启发。

Javascript 相关文章推荐
实现JavaScript中继承的三种方式
Oct 16 Javascript
基于Jquery+Ajax+Json的高效分页实现代码
Oct 29 Javascript
兼容主流浏览器的JS复制内容到剪贴板
Dec 12 Javascript
jQuery实现调整表格单列顺序完整实例
Jun 20 Javascript
详解js中常规日期格式处理、月历渲染和倒计时函数
Dec 28 Javascript
JS判断微信扫码的方法
Aug 07 Javascript
react开发教程之React 组件之间的通信方式
Aug 12 Javascript
微信小程序WebSocket实现聊天对话功能
Jul 06 Javascript
vue系列之requireJs中引入vue-router的方法
Jul 18 Javascript
vue template中slot-scope/scope的使用方法
Sep 06 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
Sep 16 Javascript
详解一个基于套接字实现长连接的express
Mar 28 Javascript
详解JS中Array对象扩展与String对象扩展
Jan 07 #Javascript
js创建对象的方法汇总
Jan 07 #Javascript
JavaScript截取、切割字符串的技巧
Jan 07 #Javascript
js确认框confirm()用法实例详解
Jan 07 #Javascript
实例讲解jquery与json的结合
Jan 07 #Javascript
javascript仿百度输入框提示自动下拉补全
Jan 07 #Javascript
基于jquery实现表格无刷新分页
Jan 07 #Javascript
You might like
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
js操作IE浏览器弹出浏览文件夹可以返回目录路径
2014/07/14 Javascript
jQuery的context属性用法实例
2014/12/27 Javascript
js实现登陆遮罩效果的方法
2015/07/28 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
JavaScript判断输入是否为数字类型的方法总结
2017/09/28 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
浅谈Vue.use的使用
2018/08/29 Javascript
Vue中使用 setTimeout() setInterval()函数的问题
2018/09/13 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
Vue实现回到顶部和底部动画效果
2019/07/31 Javascript
[01:59][TI9趣味视频] 全明星赛奖励
2019/08/23 DOTA
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
2016/06/23 Python
Python中selenium实现文件上传所有方法整理总结
2017/04/01 Python
pandas创建新Dataframe并添加多行的实例
2018/04/08 Python
浅谈Python中重载isinstance继承关系的问题
2018/05/04 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
详解Python正则表达式re模块
2019/03/19 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
2020/04/14 Python
python查询MySQL将数据写入Excel
2020/10/29 Python
手把手教你用纯css3实现轮播图效果实例
2017/05/04 HTML / CSS
html5使用canvas画三角形
2014/12/15 HTML / CSS
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
英国版MAC彩妆品牌:Illamasqua
2018/04/18 全球购物
eBay瑞士购物网站:eBay.ch
2018/12/24 全球购物
优秀毕业生事迹材料
2014/02/12 职场文书
借名购房协议书范本
2014/10/06 职场文书
教师节横幅标语
2014/10/08 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
人为什么会“幸灾乐祸”?
2019/08/06 职场文书
python中super()函数的理解与基本使用
2021/08/30 Python
MySQL中B树索引和B+树索引的区别详解
2022/03/03 MySQL
css中有哪些方式可以隐藏页面元素及区别
2022/06/16 HTML / CSS