栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用下拉列表中选择的值过滤c:forEach给出的结果?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用下拉列表中选择的值过滤c:forEach给出的结果?

恐怕没有简单的解决方案可以解决您的问题。您应该考虑使用ajax更新在服务器端进行操作。客户端过滤可能需要您从studentList生成的HTML中解析数据,也可能需要将数据作为JSON格式的数组注入。在这两种情况下,您最终都会获得两倍的数据(服务器和客户端)。在客户端拥有数据只会允许您禁用某些选项值,而不能隐藏它们。因此,如果您希望在不显示某些选项的情况下进行真正的过滤,则应在服务器上过滤列表。为此,您应该将所选选项从第一个下拉列表“
byCollege”发布到后端,以便检索用于重建“ byDept”复选框的过滤后的“ uniqueDeptList”。

脚步:

1.处理“ byCollege”下拉列表的更改事件

2.将选定的选项值发布到您的servlet

3.过滤servlet中的数据,并将过滤后的数据作为POST响应返回(此示例中省略)

4.删除旧的选择选项,然后从过滤的数据中重新创建它们

$("#byCollege").change(function() {  $("select option:selected").first().each(function() {    // Get and convert the data for sending    // Example: This variable contains the selected option-text    var outdata = $(this).text();    // Send the data as an ajax POST request    $.ajax({      url: "yourjsonservlet",      type: 'POST',      dataType: 'json',      data: JSON.stringify(outdata),      contentType: 'application/json',      mimeType: 'application/json',      success: function(data) {        // Remove old select options from the DOM        $('#byCollege')          .find('option')          .remove()          .end();        // Parse data and append new select options        //(omitted here; e.g. $('#byCollege').append($("<option>").attr(...))      },      error: function(data, status, er) {        alert("error: " + data + " status: " + status + " er:" + er);      }    });  });});


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/635995.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号