javascript中select下拉框的用法总结
作者:xi_2130 发布时间:2024-04-19 09:57:51
标签:javascript,select,下拉框
本文针对开发项目中遇到的问题,进行了汇总
问题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>
问题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>
结果图如下:
如果大家还想深入学习,可以点击jquery下拉框效果汇总、JavaScript下拉框效果汇总进行学习。
这就是我在开发中遇到的问题,希望可以对大家的学习有所启发。


猜你喜欢
- pandas获取csv指定行,列house_info = pd.read_csv('house_info.csv')1:取行
- 事件捕捉(Event Capture)的实现问题 W3C DOM Level2的事件模型规范中,事件在DOM树中的传播过程(从根节点到目标节
- MYSQL数据库安装完成后,默认最大连接数是100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,增加默认MYSQL连接数的方法有两
- 1.第一种方法<table><tr><td>当前时间:</td><td id=&quo
- 有两种类型的回调函数:blocking callbacks (also known as synchronous callbacks or
- 结合工作中的内容和大家分享一次Left Jon优化的过程,希望能给同学们新的思路。【功能背景】 我们需要
- <ScriptRUNAT=SERVERLanguage=VBScript>SubApplication_OnStar
- 开始码代码之前,我们先来了解一下三种邮件服务协议:1、SMTP协议SMTP(Simple Mail Transfer Protocol),即
- 看代码吧~package mainimport ( "fmt")type XCDataStu struct { Id &
- ImageField的使用笔记今天完善作业写的订单系统,主要是给每一个菜品增加图片,看起来美观一些,但是没想到这个小小的需求花了我一天时间,
- 今天看看那些知名的Logo,可能你没注意过,它们也是一直在变化,有的还挺雷人的!先从时尚的苹果开始吧,苹果也有土的时候。1976年那第一个L
- 1、首先停止正在运行的MySQL进程 Linux下,运行 killall -TERM mysqld Windows下,如果写成服务的 可以运
- 本文实例讲述了Python利用神经网络解决非线性回归问题。分享给大家供大家参考,具体如下:问题描述现在我们通常使用神经网络进行分类,但是有时
- K近邻法是有监督学习方法,原理很简单,假设我们有一堆分好类的样本数据,分好类表示每个样本都一个对应的已知类标签,当来一个测试样本要我们判断它
- 1、使用函数DATE_SUBDATE_SUB函数在当前时间减去一定的时间DATE_SUB(date,INTERVAL expr unit)d
- 近日无事,想起以前曾打算过要做一个定时重启或关机的工具,便花了一点时间以hta的形式写了个,名为"Windows Timer&qu
- HTML文件 一、 设置编码UTF-8对于中文网页需要使用<meta charset="utf-8">声明编
- wlile循环while True表示永远为真,不管是什么条件都会向下执行,下面是写的一个例子。#!/usr/bin/env pythona
- pytest介绍pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点:1、简单灵活,容易上手,文档丰富;2、支持参数
- 表一、运算符与特殊字符 运算符描述/选择子元素,返回左侧元素的直接子元素;如果"/"位于最左侧表示选择根结点的直接子元素