Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript或jQuery Gridview过滤器_Javascript_Jquery_Asp.net_Gridview - Fatal编程技术网

Javascript或jQuery Gridview过滤器

Javascript或jQuery Gridview过滤器,javascript,jquery,asp.net,gridview,Javascript,Jquery,Asp.net,Gridview,我有一个ASP.NET GridView和多个列表框作为部门、类别、学院等。列表框和GridView是从codebehind中的数据库(MSSQL)填充的 我需要一个JS或jQuery函数,它接受所选项目的值并根据该值过滤gridview行例如,当从部门列表框中选择一个部门时,它将仅显示该部门中的条目(隐藏其他条目) 我知道,如果没有示例代码,这不是一个合适的问题,但在这种情况下,我确实需要一些提示 谢谢你的帮助 这可能会让你开始 jQuery $("#ListBoxID").change(fu

我有一个ASP.NET GridView和多个列表框作为部门、类别、学院等。列表框和GridView是从codebehind中的数据库(MSSQL)填充的

我需要一个JSjQuery函数,它接受所选项目的值并根据该值过滤gridview行例如,当从部门列表框中选择一个部门时,它将仅显示该部门中的条目(隐藏其他条目)

我知道,如果没有示例代码,这不是一个合适的问题,但在这种情况下,我确实需要一些提示


谢谢你的帮助

这可能会让你开始

jQuery

$("#ListBoxID").change(function() {
    $("#" + GridViewID).find('td').not(':contains("' + $(this).val() + '")').parents('tr').hide();
});

如果您的
ListBox.SelectionMode
设置为
Multiple
$(此).val()
将包含一个选定项目的数组,您也必须处理该数组。

您有两个选项:

  • 您可以利用(它获取gridview生成的现有
    标记,并使用各种有用的选项将其启动)。然后,您可以利用他们的API添加过滤逻辑。以下是一个例子:

  • 另一个选项是编写自己的jQueryAjax调用,当单击列表框项时将触发该调用。然后,它将在代码隐藏中调用静态Web方法(返回字符串)(并将所选列表框选项作为参数发送)。静态web方法将使用参数值重新查询数据库以筛选结果。然后在代码中构建gridview,将其与查询结果绑定,将gridview转换为html字符串,并将其作为对初始jQueryAjax调用的响应返回。在AJAX调用的
    success:
    回调中,您将获取响应html字符串,并将其放入保存页面上Gridview的容器html元素中。有关此方法的更多信息:

    • (说明如何使用jQuery调用page方法)
    • (与示例稍有不同,它使用ASP.NET AJAX而不是jQuery AJAX在页面上填充html—但请注意静态Web方法—它演示了如何创建html字符串。)
  • 如果这一切看起来很复杂,您可以使用常规回发(而不是AJAX),方法是在列表框上创建一个选定的索引更改事件,该事件将使用筛选选项重新查询数据库,并重新绑定现有的gridview


  • 希望这能有所帮助

    Hi@samet,你觉得这些答案有用吗?你有试过这些吗?需要帮助吗?