我有一个启用了排序和分页的 webgrid。我在同一个视图上还有一些下拉列表和列表框来过滤 webgrid 结果。
过滤器放置在带有 http get 方法的表单中。我在过滤器上应用了 jquery 来提交表单,所以每次当过滤器更改时,表单都会以所选值作为 url 中的查询字符串发回。在列表框中选择多个值时,生成的查询字符串如下所示
类型=1&类型=3
所以我创建了一个 int[] 类型来接受我的操作中的参数。但是,当我对 webgrid 进行排序或分页时,查询字符串被重写为
类型=1,3&page=4 ,
在这种情况下,类型参数变为空,列表框将被取消选择并自动使用“输入验证错误”类进行修改。
我实际上更喜欢 webgrid 生成的查询字符串的样式
类型=1,3
所以我可以将它直接传递到我的查询中。但是,列表框似乎不喜欢这种查询字符串。有没有办法让列表框识别组合的查询字符串,或者我必须编写代码来处理查询字符串和选定的项目?