根据下拉框的内容筛选数据

  1. 首先查询出来你需要的数据:var varLinq = …………………;

  2. 声明一个空的字符串:string Lists = “”;

  3. For循环上面查询出来的数据,把查询数据放入到一个变量里面,然后再把变量拼接到上面声明的空的字符串里面以为 ; 分割开来。
    ---- for (int i = 0; i < varLinq.Count; i++)
    {
    var linq1 = Convert.ToDateTime(varLinq[i]).ToString(“yyyy-MM-dd”).Trim();

            lists += linq1 + ";";
    

    }

  4. 把该字符串保存的session里面去,方便后面调用该条数据。Session[“list”] = lists;
    因为把数组放入到session中去,数组的类型会转换为object类型,而我们需要的是字符串数组类型,这两个类型之间的转换比较麻烦,所以我在这里直接保存字符串,然后在读取session中的数据的时候再进行分割。
    在这里插入图片描述

  5. 把上面的数据分割成字符串数组,因为 ; 为分割点进行分割。
    ----string[] listes = lists.Split(’;’);

  6. 声明一个空的字符串列表,然后遍历循环声明分割好的字符串数组,并且去掉重复的字符串和空的字符串数据。
    ---- List strCount = new List();
    foreach (string listArry in listes){
    if (!strCount.Contains(listArry) && !string.IsNullOrEmpty(listArry))
    {strCount.Add(listArry); }}

  7. new 一个对象列表,List list = new List(); SelectVo是一个实体类,里面就一个id选中值(public int id { get; set; })和text显示值(public string text { get; set; })设置这两个值为允许读、写的状态。

  8. For循环上面处理好的字符串列表,然后把值放入对象列表中
    — for (int i = 0; i < strCount.Count; i++){
    var linq1 = strCount[i].ToString().Trim();
    SelectVo select = new SelectVo();
    select.id = i + 1; select.text = linq1;
    list.Add(select);
    }

  9. 把下拉框最开始的”–请选择—”项拼接到对象列表中。

  10. 把处理好的对象列表返回回去,下拉框的处理就完成了。return Json(list, JsonRequestBehavior.AllowGet);然后就是根据下拉框的内容查询筛选数据。

  11. 再次new 一个对象列表List list = new List();这里的对象列表中不存在上面的数据。

  12. 判断Session[‘list’]是否为空,如果为空,说明上面数据处理异常,如果不为空进行下一步操作。

  13. 声明一个字符串来接受session中的值:string strList = Session[“list”].ToString();

  14. 分割上面的字符串并保存的字符串数组里面去: string[] listes = strList.Split(’;’);

  15. 重复上面的操作:
    声明空的字符串列表(string strList = Session[“list”].ToString()?—
    遍历循环字符串数组,把值放入字符串列表里面去,并且去掉重复的字符串和空的字符串数据—For循环字符串列表,把值添加到上面声明的空的对象列表中去,然后拼接请‘—请选择—’项;代码和上面的一致。
    16.通过ID查询出来出对象列表中的文本值text,StudentDate是视图传过来的参数:
    string Text = listSelect.Where(S => S.id == StudentDate).SingleOrDefault().text;
    总体代码图片:
    在这里插入图片描述
    17.然后就是查询出下拉框对应的全部数据,并且将其样式转为年月日的形式:
    var varLinq = myModels.一周内航班信息8.Select(D => D.航班日期).ToList();
    for (int i = 0; i < varLinq.Count; i++)
    {
    var linq1 = Convert.ToDateTime(varLinq[i]);
    var linq2 = linq1.ToString(“yyyy-MM-dd”);
    listFangjie[i].StudentNumber = linq2.ToString();
    在这里插入图片描述 }
    18.判断从页面下拉框传过来的id是否大于0,大于0说明有数据根据上面获取到的text文本值进行查询: if (StudentDate > 0)
    {
    listFangjie = listFangjie.Where(D => D.StudentNumber.Contains(Text)).ToList();
    }
    并且把值返回到视图:return Json(layuiTableData, JsonRequestBehavior.AllowGet);
    19.然后就是视图(JQuery)部分的处理,视图部分代码:
    1.获取下拉框的值:var StudentDate = $("#StudentDate").val();
    2.判断如果获取到的值为null、””或者undefined则使它的值为0;
    3.表格数据重载,并把下拉框的值作为参数传到控制器,控制器处理完成之后就会刷新表格。
    20.下拉框的代码之所以那么复杂主要是因为数据库的表的问题,因为数据库只有一张粗糙的主表,并没有进行详细的分类处理,所以为了实现下拉框的查询的这个功能,代码就复杂了一点。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要根据下拉框筛选数据的折线图,可以按照以下步骤进行: 1. 收集数据:首先需要收集相关数据,包括下拉框中的选项和每个选项对应的数据。 2. 绘制折线图:使用绘图软件,如Excel或Python中的Matplotlib,绘制折线图。 3. 添加下拉框:在绘图软件中,可以使用插件或库来添加下拉框功能。或者,您可以手动添加下拉框,方法是在Excel中使用数据验证或在Python中使用Tkinter库或其他GUI工具包。 4. 连接下拉框和折线图:将下拉框的选项与数据集中的相应数据连接起来,并在下拉框选择不同的选项时,折线图应自动更新以显示与所选选项相对应的数据。 5. 完善图表:添加图表标题、横纵坐标标签、图例等,以使图表更加清晰易懂。 希望这些步骤可以帮助您创建一个根据下拉框筛选数据的折线图! ### 回答2: 要实现根据下拉框筛选数据的折线图,可以按以下步骤进行: 1. 首先,需要准备好数据源,可以将数据存储在一个表格或数据库中。数据源应包含需要展示的各个类别的数据,例如时间、销售额等信息。 2. 在页面上创建一个下拉框,可以使用HTML的<select>标签实现,同时需为该下拉框指定一个唯一的id。 3. 在JavaScript中,使用事件监听器来监听下拉框的变化事件。当下拉框的值发生变化时,触发相应的事件。 4. 在事件处理函数中,获取到选择的值,并利用该值筛选出所需的数据。 5. 使用折线图库(例如Chart.js)来绘制折线图。先创建一个<canvas>元素作为图表容器,并为其指定一个唯一的id。 6. 使用JavaScript代码,利用获取到的筛选后的数据和之前创建的<canvas>元素,初始化折线图。 7. 在初始化折线图时,设置合适的x轴和y轴标签(例如时间和销售额),并将筛选后的数据传入图表。 8. 最后,将生成的折线图显示在页面上供用户查看。 通过以上步骤,就可以实现根据下拉框筛选数据的折线图。用户选择下拉框中的选项后,会根据选项对数据进行筛选,并将符合条件的数据显示在折线图上,从而实现数据可视化的效果。 ### 回答3: 编写一个根据下拉框筛选数据的折线图可以分为以下几个步骤: 1. 数据准备:准备需要绘制的数据集合,包括横坐标数据和纵坐标数据。这些数据可以存储在数组或者数据表中。 2. 创建下拉框:使用HTML和JavaScript创建一个下拉框,并填充下拉框选项。下拉框的选项应该与数据集合相关。 3. 监听下拉框选择事件:在JavaScript中添加一个事件监听器,当下拉框的选项发生改变时触发相应的函数。 4. 根据选择的选项筛选数据:根据下拉框选中的选项,从数据集合中筛选出对应的数据子集。 5. 绘制折线图:使用JavaScript的图表库,如Highcharts或Chart.js,将筛选后的数据子集绘制成折线图。 6. 更新折线图:每当下拉框的选项发生改变时,更新折线图的数据源,即将筛选后的数据子集传递给图表库重新绘制折线图。 7. 添加样式和交互:根据需要,为折线图添加样式和交互效果,如颜色、标签、动画等,以提升用户体验。 通过以上步骤,就可以编写一个根据下拉框筛选数据的折线图。用户可以通过选择下拉框选项来实时改变折线图的数据展示,从而对数据进行比较和分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值