【ITOO考试系统】——级联查询

2024-06-13 14:48
文章标签 系统 查询 考试 级联 itoo

本文主要是介绍【ITOO考试系统】——级联查询,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        最近在做考试系统的模板,学到了如何写级联查询,这里简单的介绍一下,如果有人在这方面有困扰,可以稍稍借

鉴一下~


       什么是级联查询


       大家做过机房收费系统应该知道,有一个组合查询,级联查询类似组合查询,不过有些微的区别。

       组合查询 : A + B + C => answer.

       级联查询: A => B => answer.


       如何实现级联查询


       实现级联查询的逻辑其实很简单,触发A的同时加载B,触发B的同时得到answer。看看我正在写的考试系统模板

的级联查询界面:



         所以在写级联查询的时候,需要先加载开考的学院,然后根据学院ID,加载课程,并通过课程和题型的对应表

tr_coursemapname查询到课程和题型的映射名,显示到界面上。整个这套级联查询的逻辑就是这样的,所以下边就

是代码部分了!

        加载学院信息:

        html代码:

<select id="academy" class="easyui-combobox" name="state" style="width: 150px; margin-right: 100px;"@* 级联查询 *@url="/BuildTemplate/academy";valueField="id" textField="value" required="true" editable="false">
</select>
   

        controller代码:

public string academy(){ //测试所用的假数据List<Combox> comboxlist = new List<Combox>();Combox combox = new Combox();combox.id="123456";combox.value="经济学院";Combox combox1= new Combox();combox1.id="1456";combox1.value = "生科学院";Combox combox2 = new Combox();combox2.id="12346";combox2.value="数信学院";Combox combox3 = new Combox();combox3.id="12345";combox3.value="体育学院";comboxlist.Add(combox1);comboxlist.Add(combox2);comboxlist.Add(combox3);JavaScriptSerializer servializer = new JavaScriptSerializer();return servializer.Serialize(comboxlist);}
       

       这样就完成加载考试学院了,然后就是触发这个combobox,然后加载课程信息

       html代码:

@* 2.根据学院信息加载课程信息 *@课程:<select name="state" id="Course" class="easyui-combobox" style="width: 150px;"@* 级联查询 *@url="/BuildTemplate/test1";valueField="id" textField="value" required="true" editable="false"></select>

       controller代码:

//获取课程信息
public string Course(string val){String value = val;List<Combox> comboxlist = new List<Combox>();Combox combox = new Combox();combox.id = "1";combox.value = "数学";Combox combox1 = new Combox();combox1.id = "2";combox1.value = "汉语言文学";Combox combox2 = new Combox();combox2.id = "3";combox2.value = "大学英语";Combox combox3 = new Combox();combox3.id = "4";combox3.value = "大学体育";comboxlist.Add(combox1);comboxlist.Add(combox2);comboxlist.Add(combox3);JavaScriptSerializer servializer = new JavaScriptSerializer();return servializer.Serialize(comboxlist);}
               然后最重要的就是javascript了:

<script type="text/javascript">$(function () {var val="";var id = "";$('#academy').combobox({       //触发学院的select事件onSelect: function () { val = $('#academy').combobox('getValue');   //获取学院的id                $('#Course').combobox({valueField: 'id',textField: 'value',editable: false,url: '/BuildTemplate/Course?val=' + val,});}});$('#Course').combobox({   //触发课程的select事件onSelect: function () {id = $('#Course').combobox('getText');                $.ajax({type: "post",url: '/ConfigurationQue/QueryExamCourseName',async: false,data: { "courseid": id },dataType: 'json',success: function (data) {try {var coursename = data[0].ExamCourseName;$("#mapname").val(coursename);}catch (Exception) {alert("无映射名记录,请输入映射名!");$("#mapname").val("");$("#mapname").focus();}}});}})})
</script>
              然后就是通过课程ID加载映射名啦!

        controller代码:

public JsonResult mapname(String id){ String value = id;JsonResult js = new JsonResult();js.Data = value;return js;}


       这样整个级联查询就OK了!看看效果!





        当当当当!!!肿么样!是不是棒棒哒?!


这篇关于【ITOO考试系统】——级联查询的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1057606

相关文章

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

浅谈mysql的sql_mode可能会限制你的查询

《浅谈mysql的sql_mode可能会限制你的查询》本文主要介绍了浅谈mysql的sql_mode可能会限制你的查询,这个问题主要说明的是,我们写的sql查询语句违背了聚合函数groupby的规则... 目录场景:问题描述原因分析:解决方案:第一种:修改后,只有当前生效,若是mysql服务重启,就会失效;

MySQL多列IN查询的实现

《MySQL多列IN查询的实现》多列IN查询是一种强大的筛选工具,它允许通过多字段组合快速过滤数据,本文主要介绍了MySQL多列IN查询的实现,具有一定的参考价值,感兴趣的可以了解一下... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析与优化1.

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固 通俗易懂版)

《MySQL中实现多表查询的操作方法(配sql+实操图+案例巩固通俗易懂版)》本文主要讲解了MySQL中的多表查询,包括子查询、笛卡尔积、自连接、多表查询的实现方法以及多列子查询等,通过实际例子和操... 目录复合查询1. 回顾查询基本操作group by 分组having1. 显示部门号为10的部门名,员

Windows系统下如何查找JDK的安装路径

《Windows系统下如何查找JDK的安装路径》:本文主要介绍Windows系统下如何查找JDK的安装路径,文中介绍了三种方法,分别是通过命令行检查、使用verbose选项查找jre目录、以及查看... 目录一、确认是否安装了JDK二、查找路径三、另外一种方式如果很久之前安装了JDK,或者在别人的电脑上,想