【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

相关文章

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

MySQL不使用子查询的原因及优化案例

《MySQL不使用子查询的原因及优化案例》对于mysql,不推荐使用子查询,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,本文给大家... 目录不推荐使用子查询和JOIN的原因解决方案优化案例案例1:查询所有有库存的商品信息案例2:使用EX

SpringBoot基于MyBatis-Plus实现Lambda Query查询的示例代码

《SpringBoot基于MyBatis-Plus实现LambdaQuery查询的示例代码》MyBatis-Plus是MyBatis的增强工具,简化了数据库操作,并提高了开发效率,它提供了多种查询方... 目录引言基础环境配置依赖配置(Maven)application.yml 配置表结构设计demo_st