Html form <select>下拉列表菜单与跳转菜单表单标签篇

本文介绍了HTML中的Select标签及其使用场景,包括普通下拉列表、跳转下拉列表及新窗口跳转菜单的具体实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Form select语法与结构:   -   TOP

 
  1. <select name=""> 
  2. <option value="0">DIVCSS5</option> 
  3. <option value="1">DIVCSS5</option> 
  4. </select> 

二、Form select标签使用说明:   -   TOP

为什么我们要使用Form select下来菜单列表呢?那是我们用于表单下拉选择所需项。

下面CSS技术DIVCSS5为大家介绍常见html Form select使用地方。

我们使用表单下拉列表选择数据,如省、市、县、年、月等数据,我们即可使用下拉菜单表单进行设置。
select 我下拉列表菜单标签
Option为下拉列表数据标签
Value 为Option的数据值(用于数据的传值)

form select下拉菜单列表使用地方展示
select使用地方,上图为日期下拉列表案例运用截图

三、Form select使用种类:   -   TOP

Select下拉菜单列表表单标签,常使用有两种

1)、普通下拉列表菜单
html代码如下:

 
  1. <form action="" method="get"> 
  2. <label>1、普通下拉列表菜单</label> 
  3. <select name=""> 
  4. <option value="0">DIVCSS5</option> 
  5. <option value="1">DIVCSS5</option> 
  6. </select> 
  7. </form> 

2)、跳转下拉列表菜单(如常见点击后跳转到选择网站)
常常一些网站做友情链接,与部门之间使用select下拉标签实现网址跳转。下面我们通过代码与案例接受select跳转菜单应用。

跳转菜单html代码如下:

 
  1. <form action="" method="get"> 
  2. <label>2、跳转的下拉列表菜单</label> 
  3. <select name="jumpMenu" id="jumpMenu"  onchange="MM_jumpMenu('parent',this,0)"> 
  4. <option value="http://www.DIVCSS5.com/">DIVCSS5</option> 
  5. <option value="http://www.divcss5.com/">DIVCSS5</option> 
  6. </select> 
  7. </form> 

实现跳转还需要在head标签内加入Js脚本动作代码:

 
  1. <script type="text/javascript"> 
  2. <!-- 
  3. function MM_jumpMenu(targ,selObj,restore){ //v3.0 
  4. eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); 
  5. if (restore) selObj.selectedIndex=0
  6. //--> 
  7. </script> 

即可使用表单select控件实现跳转的列表菜单效果。

3)、更简洁的新建浏览器(选项卡)窗口跳转菜单:
只需<select>标签内加入如下代码:

onchange="javascript:if (this.options[this.selectedIndex].value != '') window.open(this.options[this.selectedIndex].value);this.options[0].selected;"

得到以下代码:

 
  1. <select onchange="javascript:if (this.options[this.selectedIndex].value != '')  window.open(this.options[this.selectedIndex].value);this.options[0].selected;"> 

完整简单新打开网页窗口跳转菜单实例:

 
  1. <form action="" method="get">  
  2. <label>新建浏览器网页窗口下拉跳转菜单</label>  
  3. <select name=""onchange="javascript:if (this.options[this.selectedIndex].value != '') window.open(this.options[this.selectedIndex].value);this.options[0].selected;">  
  4. <option value="0">DIVCSS5</option>  
  5. <option value="1">DIVCSS5</option>  
  6. </select>  
  7. </form>  

四、DW软件里截图表单效果:   -   TOP

select下拉菜单列表与跳转下拉菜单案例截图
html select下拉菜单列表与跳转菜单案例截图

五、此select表单标签案例在浏览器中效果:   -   TOP

form select案例截图
实例案例截图

完整案例在线演示http://www.divcss5.com/fanli/form-select.html

HTML常用标签整理 <!-- h1-h6 -->     <h1>标题</h1>     <p>段落</p>     <!-- 列表 -->     <ul>         <li>列表项</li>         <li>列表项</li>         <li>列表项</li>     </ul>     <!-- 文本标签 -->     <strong>加粗</strong>     斜体字     <ins>下划线</ins>     <del>删除线</del>     <!-- 超链接 -->     <a href="#" target="_blank">超链接</a>     <!-- 图片 -->     <img src="第4章/hong.png" alt="">     <!-- 表格 -->     <table border="1">         <tr>             <td colspan="2">学号/姓名</td>             <td rowspan="2">性别/男</td>         </tr>         <tr>             <td>20230101</td>             <td>林志远</td>         </tr>     </table>     <!-- 水平线(单标签) -->     <hr>     <!-- 换行 -->     <br>     <!-- 表单 -->     <form action="#" method="post">         文本框:<input type="text"> <br>         密码框:<input type="password"> <br>         单选框:<input type="radio" name="sex">男 <br>         复选框:<input type="checkbox" name="hobby">爱好 <br>         文件上传:<input type="file"> <br>         日期选择:<input type="date"> <br>         颜色选择:<input type="color"> <br>         邮箱:<input type="email"> <br>         数字:<input type="number"> <br>         下拉菜单:         <select name="city">             <option value="">泉州市</option>             <option value="">厦门市</option>         </select>         <br>         <input type="submit" value="提交">         <input type="reset" value="重置">         <input type="button" value="普通按钮">     </form>     <!-- 结构标签(语义化标签) -->     <header>头部</header>     <nav>导航栏</nav>     <section>区块</section>     <article>文章</article>     <aside>侧边栏</aside>     <footer>底部</footer>     <!-- 盒子标签(块元素) -->     <div>盒子模型</div>     <!-- span (行内元素) -->     <span>span</span>
最新发布
05-31
<!-- 权限管理 --> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link rel="stylesheet" href="../../layui/css/layui.css"> <link rel="stylesheet" href="../../css/diy.css"> <style> .layui-body { overflow-x: scroll; } </style> </head> <body> <div class="section1"> <!-- 内容主体区域 --> <div class="manu auth" style="padding: 15px;"> <form class="layui-form" action=""> <div class="form-input-box-t layui-form-item"> <div class="input-box"> <label class="layui-form-label">权限名</label> <div class="layui-input-block input-i block"> <input type="text" name="mod_name" required lay-verify="required" autocomplete="off" class="layui-input"> <!--通过lay-verify="required"实现输入验证,确保必填字段非空--> </div> </div> <div class="input-box"> <!--查询部分--> <label class="layui-form-label">用户组</label> <div class="layui-input-block select block"> <select name="user_group" lay-filter="required" id="user_group"> <option value=""></option> </select> </div> </div> <div class="input-box"> <label class="layui-form-label">添加权限</label> <div class="layui-input-block select block"> <select name="add" lay-filter="required"> <option value=""></option> <option value="0">无</option> <option value="1">有</option> </select> </div> </div> <div class="input-box"> <label class="layui-form-label">修改权限</label> <div class="layui-input-block select block"> <select name="set" lay-filter="required"> <option value=""></option> <option value="0">无</option> <option value="1">有</option> </select> </div> </div> <div class="input-box"> <label class="layui-form-label">删除权限</label> <div class="layui-input-block select block"> <select name="del" lay-filter="required"> <option value=""></option> <option value="0">无</option> <option value="1">有</option> </select> </div> </div> <div class="input-box"> <label class="layui-form-label">查询权限</label> <div class="layui-input-block select block"> <select name="get" lay-filter="required"> <option value=""></option> <option value="0">无</option> <option value="1">有</option> </select> </div> </div> </div> </form> <div class="buts"> <button type="button" class="layui-btn layui-btn-normal" id="inquire"><span>查询</span></button> <button type="button" class="layui-btn layui-btn-normal" id="reset"><span>重置</span></button> </div> <div class="Customize-the-box"> <div class="circle"></div> <div class="circle"></div> <div class="card-inner"></div> </div> </div> <h1>数据列表</h1> <div class="table"> <table class="layui-hide" id="newsClassification" lay-filter="newsClassification"></table> <script type="text/html" id="toolbarDemo"> <div class="layui-btn-container"> <button class="layui-btn layui-btn-sm" lay-event="add">修改</button> </div> </script> </div> </div> <script src="../../layui/layui.js"></script> <script src="../../js/axios.min.js"></script> <script src="../../js/index.js"></script> <script src="../../js/base.js" charset="utf-8"></script> <script> var BaseUrl = baseUrl() layui.use(['element', 'layer', 'util'], function () { var element = layui.element , table = layui.table , layer = layui.layer , util = layui.util , $ = layui.$; let personInfo = JSON.parse(sessionStorage.personInfo) let user_group = personInfo.user_group let token = sessionStorage.token || null //头部事件 util.event('lay-header-event', { //左侧菜单事件 menuLeft: function (othis) { layer.msg('展开左侧菜单的操作', {icon: 0}); } , menuRight: function () { layer.open({ type: 1 , content: '<div style="padding: 15px;">处理右侧面板的操作</div>' , area: ['260px', '100%'] , offset: 'rt' //右上角 , anim: 5 , shadeClose: true }); } }); // table 事件 table.render({ elem: '#newsClassification' , toolbar: true , url: BaseUrl + '/api/auth/get_list' , headers: { 'x-auth-token': token, 'Content-Type': 'application/json' } ,limits: [10] , page: { //支持传入 laypage 组件的所有参数(某些参数除外,如:jump/elem) - 详见文档 layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局 //,curr: 5 //设定初始在第 5 页 , groups: 1 //只显示 1 个连续页码 , first: false //不显示首页 , last: false //不显示尾页 } , cols: [[ {type: 'checkbox'} , {field: 'user_group', width: '10%', title: '用户组'} , {field: 'mod_name', width: '10%', title: '权限名称', templet: function (d) { if (d.path.replace('/'+d.table_name+'/','')=='table') { return "<div>"+d.mod_name+"后台列表</div>" } if (d.path.replace('/'+d.table_name+'/','')=='view') { return "<div>"+d.mod_name+"后台详情</div>" } if (d.path.replace('/'+d.table_name+'/','')=='list') { return "<div>"+d.mod_name+"前台列表</div>" } if (d.path.replace('/'+d.table_name+'/','')=='details') { return "<div>"+d.mod_name+"前台详情</div>" } if (d.path.replace('/'+d.table_name+'/','')=='edit') { return "<div>"+d.mod_name+"前台编辑</div>" } } } , { field: 'add', width: '10%', title: '<span>添加</span>权限', templet: function (d) { if (d.add == '0') { return "<div>无</div>" } else { return "<div>有</div>" } } } , { field: 'del', width: '10%', title: '<span>删除</span>权限', templet: function (d) { if (d.del == '0') { return "<div>无</div>" } else { return "<div>有</div>" } } } , { field: 'set', width: '10%', title: '修改权限', templet: function (d) { if (d.set == '0') { return "<div>无</div>" } else { return "<div>有</div>" } } } , { field: 'get', width: '10%', title: '<span>查询</span>权限', templet: function (d) { if (d.get == '0') { return "<div>无</div>" } else { return "<div>有</div>" } } } , { field: 'create_time', width: '15%', title: '新增时间', sort: true, templet: "<div>{{layui.util.toDateString(d.create_time, 'yyyy-MM-dd HH:mm:ss')}}</div>" } , { field: 'update_time', width: '15%', title: '更新时间', sort: true, templet: "<div>{{layui.util.toDateString(d.update_time, 'yyyy-MM-dd HH:mm:ss')}}</div>" } , {field: 'operate', title: '操作', toolbar: "#toolbarDemo"} ]] , page: true, request: { limitName: 'size' }, response: { statusName: 'code', //规定返回/Back的状态码字段为code statusCode: 200 //规定成功的状态码味200 }, parseData: function (res) { return { "code": 200, "msg": "", "count": res.result.count, "data": res.result.list } }, where: {like: 0, size: 10} }); layui.table.on('tool(newsClassification)', function (obj) { //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值" var data = obj.data; //获得当前行数据 var layEvent = obj.event; //获得 lay-event 对应的值(也可以是表头的 event 参数对应的值) var tr = obj.tr; //获得当前行 tr 的DOM对象 if (layEvent == "add") { let auth_id = data.auth_id // window.location = ('./view.html?' + auth_id) layopen_dateil('./view.html?' + auth_id) } }); // 请求参数: let request = {like: 0, size: 10, page: 1, mod_name: '', user_group: '',add:'',set:'',del:'',get:'',orderby: 'create_time desc'} // <span>重置</span>/Reset参数 let resetName = {like: 0, size: 10, page: 1, orderby: 'create_time desc'} fun('newsClassification', BaseUrl + '/api/auth/del', 'auth_id', request, resetName) async function get_list_user_group() { $.ajax({ url: BaseUrl + "/api/user_group/get_list", type: "get", async: false, success: function (data) { if (data && typeof data === 'string'){ data = JSON.parse(data); } if (data.result) { // 拿到单选框的父级节点 let select = document.querySelector("#user_group") let op1 = document.createElement('option') select.appendChild(op1) // 收集数据 长度 let count // 收集数据 数组 let arr = [] count = data.result.count arr = data.result.list for (let i = 0; i < arr.length; i++) { // 创建节点 let op = document.createElement('option') // 给节点赋值 op.innerHTML = arr[i].name op.value = arr[i].name // 新增/Add节点 select.appendChild(op) layui.form.render('select') } } } }); } get_list_user_group(); }); </script> </body> </html> 逐个分析我给的代码,代码对应的功能,不要扩展
05-28
<template>   <div class="card">   <div class="card-header">    学习计划表   </div>   <div class="card-body">     <div class="row">           </div>     <div class="col-auto">   <div class="input-group">     <span class="input-group-text">学习科目</span>     <input v-model.trim="subject" type="text" class="form-control" placeholder="请输入学习科目">     </div>   </div>     <div class="col-auto">       <div class="input-group">         <span class="input-group-text">学习内容</span>         <textarea v-model.trim="content" style="height:32px;" class="form-control" placeholder="请输入学习内容"></textarea>       </div>     </div>   </div>   <div class="col-auto">     <div class="input-group">       <span class="input-group-text">学习地点</span>       <select class="form-select" v-model="selectedOption">         <option v-for="option in options" :value="option.place" :key="option.placeCode">           {{ option.place }}         </option>       </select>     </div>   </div> </div> <form @submit.prevent="add" class="row">   <div class="col-auto">     <div class="input-group">       <span class="input-group-text">学习科目</span>       <input type="text" class="form-control" placeholder="请输入学习科目">    </div>    </div>    <div class="col-auto">      <div class="input-group">     <span class="input-group-text">学习内容</span>    <textarea style="height:32px" placeholder="请输入学习内容" class="form-control"></textarea>   </div>   </div>   <div class="col-auto">     <div class="input-group">   <span class="input-group-text">学习地点</span>   <select class="form-select">     <option value="1">自习室</option>     <option value="2">图书馆</option>     <option value="3">宿舍</option>   </select> </div>   </div>   <div class="col-auto">     <button class="btn btn-primary" type="submit">添加</button>   </div> </form> <table class="table table-hover">   <thead>     <tr>       <th scope="col">序号</th>       <th scope="col">学习科目</th>       <th scope="col">学习内容</th>       <th scope="col">学习地点</th>       <th scope="col">完成状态</th>       <th scope="col">操作</th>     </tr>   </thead>   <tbody>     <tr>     <td>1</td>     <td>Vue.js 前端实战开发</td>     <td>学习指令,例如 v-if, v-for, v-model 等</td>     <td>自习室</td>     <td>       <div class="form-check form-switch">         <input class="form-check-input" type="checkbox" role="switch" id="flexSwitchCheckDefault">         <label class="form-check-label" for="flexSwitchCheckDefault">未完成</label>       </div>     </td>     <td>       <a href=" " @click="remove(item.id, item.status)">删除</a >     </td>     </tr>   </tbody> </table> <div class="form-check form-switch">   <input v-model="item.status" :id="'sw'+item.id" class="form-check-input" type="checkbox" role="switch">   <label v-if="item.status" class="form-check-label" :for="'sw'+item.id">已完成</label>   <label v-else class="form-check-label" :for="'sw'+item.id">未完成</label> </div> </template> <script setup> import { ref,reactive } from 'vue'; const remove = (id,status) =>{   if(status){   list.value = list.value.filter(item => item.id !== id)   }else{     alert("请先完成该计划!")   } } const list = reactive([]); const subject = ref(""); const content = ref(""); const nextId = ref(""); const selectedOption = ref('自习室'); const option = reactive([   {placeCode:0, place:'自习室',},   {placeCode:1, place:'图书馆',},   {placeCode:2, place:'宿舍',}, ]); const add = () =>{   if(subject.value === ''){     alert('学习科目为必填项!')     return   }else if(content.value === ''){   alert("学习内容为必填!")   return } nextId.value = Math.max(...list.value.map(item => item.id)) + 1 const obj = {   id: nextId.value,   subject: subject.value,   content:content.value,   place:selectedOption.value,   status:false } list.value.push(obj) subject.value = '' content.value = '' selectedOption.value = '自习室' } </script>修改此代码
03-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值