jsp将一个文本输入框改成下拉单选框,选项为字典表配置,通过后端查询

一,业务场景:

一个人员信息管理页面,原来有个最高学历是文本输入框,可以随意填写,现在业务想改成下拉单选框进行规范化,在专科及以下、本科、研究生三个选项中选择;
在这里插入图片描述

二,需要解决问题

1,增加字典表配置,2,将前端文本输入改成下拉单选框 3,在编辑和查看详情时,原来的信息也要展示,但保存时原来的数据(不在专科及以下、本科、研究生三个选项中的)不保存

三,解决方案

1,在字典表添加最高学历枚举值

在SQL中,向字典表code_entry中插入三条数据的语句如下:

INSERT INTO code_entry (category, code, name)
VALUES ('最高学历', '01', '专科及以下'),('最高学历', '02', '本科'),('最高学历', '03', '研究生');

2,在后端对查询出来的学历信息进行处理,以适配前端下拉框展示

if(StringUtil.isNotBlank(info.getHighEducation)){//CodeEntryEO ceo = codeEntryService.findCodeEntryByNameAndCategory(info.getHighEducation);if(ceo == null){CodeEntry co =new CodeEntry();co.setCode("99");co.setName(info.getHighEducation());/*listEducation是查出来的最高学历配置信息,如果这个数据的最高学历不在字典表中,给这条数据一个code:99,并添加到配置list中*/listEducation.add(co);info.setHigtEducationCode("99");}
}

3,前端input输入框改成 从专科及以下、本科、研究生单选

如果选中的值为旧数据,提示请选择前三个学历信息

<div class="form-group"><label for="highestEducateSelect">最高学历</label><select class="form-control" id="highestEducateSelect" name="highestEducateSelect" required><option value="">请选择最高学历</option><c:forEach items="${listEducation}" var="education"><option value="${education.id}">${education.name}</option></c:forEach><!-- 假设这里有个非法的选项 --><option value="99">其他(无效选项)</option></select><div class="invalid-feedback d-none" id="highestEducationFeedback">请选择前三个学历信息</div>
</div><script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function () {$('#myForm').on('submit', function (event) {var selectedDegree = $('#highestEducateSelect').val();// 检查是否选择了无效选项(这里假定99代表无效选项)if (selectedDegree === '99') {event.preventDefault(); // 阻止表单提交// 获取当前的select元素var selectElement = $('#highestEducateSelect')[0];// 设置自定义验证错误信息并触发invalid事件selectElement.setCustomValidity('请选择前三个学历信息');selectElement.reportValidity(); // 触发验证并显示错误提示}});
});
</script>

上述代码为本人实际业务场景(隐藏业务信息后的代码)且测试通过上线,如果有什么疑问,可私信,定知无不言;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/570867.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言随机抽取数据,并作两组数据间t检验,并保存抽取的数据,并绘制boxplot

前提&#xff1a;接着上述R脚本输出的seed结果来选择应该使用哪个seed比较合理&#xff0c;上个R脚本名字&#xff1a; “5utr_计算ABD中Ge1和Lt1的个数和均值以及按照TE个数小的进行随机100次抽样.R” 1.输入数据&#xff1a;“5utr-5d做ABD中有RG4和没有RG4的TE之间的T检验.c…

QQ屠龙者终成为恶龙!工作与生活的平衡:挑战与解决方案——早读(逆天打工人爬取热门微信文章解读)

屠龙者终成为恶龙 引言Python 代码第一篇 洞见 看了上海临时工睡桥洞的现场&#xff0c;我不敢让老板知道上班苦第二篇 人民日报 来了&#xff01;新闻早班车要闻社会政策 结尾 昔日斩棘披荆的屠龙勇士 历经岁月涤荡 竟在不知不觉间铸就了自己心中的铁壁铜墙 终有一日 赫然发现…

java多线程编程面试题总结

一些最基本的基础知识就不总结了&#xff0c;参考之前写的如下几篇博客&#xff0c;阅读顺序从上到下&#xff0c;依次递进。 java 多线程 多线程概述及其三种创建方式 线程的常用方法 java 线程安全问题 三种线程同步方案 线程通信&#xff08;了解&#xff09; java 线程池…

域风网:韩国.KR域名注册量分析

近年来,随着韩国经济实力和科技实力的不断提升,该国域名注册量呈现爆发式增长,充分展现了韩国在互联网时代的重要地位。 数据显示,截至2023年6月,韩国的顶级域名(.KR)注册量已超过360万个,较2018年同期激增近40%。这一数字不仅在全球名列前茅,也远超同期其他亚洲主要国家的域名…

客户管理大揭秘!热门盘点:5款CRM工具推荐!

“本期为大家盘点客户管理中常用的5款CRM工具&#xff1a;Zoho CRM、Salesforce、Hubspot、Freshsales、和Pipedrive。” 我们会从产品特点、适用性等方面对每款产品进行全面考量。无论您是想提高客户参与度、自动化销售流程&#xff0c;还是从数据中获得可操作的见解&#xf…

Git学习笔记之基础

本笔记是阅读《git pro》所写&#xff0c;仅供参考。 《git pro》网址https://git-scm.com/book/en/v2 git官网 https://git-scm.com/ 一、git起步 1.1、检查配置信息 git config --list查看所有的配置以及它们所在的文件 git config --list --show-origin可能有重复的变量名…

在 Linux CentOS 中安装 Docker Engine(Dockers 引擎)【图文详解】

官方文档&#xff1a;https://docs.docker.com/engine/install/centos/ 操作系统要求 如果我们要在 CentOS 中安装 Docker 引擎&#xff0c;那么 CentOS 操作系统需要是以下版本之一的&#xff0c;且是处于维护的 CentOS 版本&#xff1a; CentOS 7CentOS Stream 8CentOS Str…

RocketMQ学习笔记:高可用机制(未完成)

这是本人学习的总结&#xff0c;主要学习资料如下 马士兵教育rocketMq官方文档 目录 1、规避策略1.1、默认规避策略故障延迟机制策略 2、消息负载均衡2.1、生产者的负债均衡2.2、消费者的负载均衡 1、规避策略 所谓的高可用机制就是RocketMQ如何让生产者尽可能地成功发送消息…

VPN基础

一、VPN概念 1、概述 &#xff08;1&#xff09;虚拟专用网络(VPN)的功能是&#xff1a;在公用网络上建立专用网络&#xff0c;进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。VPN可通过服务器、硬件、软件等多种方式…

【小黑送书—第十四期】>>重磅升级——《Excel函数与公式应用大全》(文末送书)

今天给大家带来AI时代系列书籍&#xff1a;《Excel 2019函数与公式应用大全》全新升级版&#xff0c;Excel Home多位微软全球MVP专家打造&#xff0c;精选Excel Home海量案例&#xff0c;披露Excel专家多年研究成果&#xff0c;让你分分钟搞定海量数据运算&#xff01; 由北京…

心理治疗聊天机器人的调查

摘要 这项调查旨在调查、分析和比较现有聊天机器人在心理治疗中的可行性和缺陷。调查指出了未来心理治疗聊天机器人所需的一系列任务。我们在公共数据库中检索了约1200篇相关文献&#xff0c;并选择了五种典型的和最先进的心理治疗聊天机器人。大多数最先进的心理治疗聊天机器人…

RabbitMQ 《简单消息》

package com.xzp.rabbitmq.simple; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.xzp.rabbitmq.util.ConnectionUtil; /** * "Hello World!" * 简单消息 * 消息发送者 - R - 发送消息&#xff08;生产者&#xff09; …