【发布时间】:2019-10-02 17:44:37
【问题描述】:
我正在开发 MVC 5 应用程序。我被困在一个有下拉列表和网格(Gijgo-grid)的视图上。网格正在根据下拉列表的选定值填充。当我第一次从下拉列表中选择一个选项时,网格会被填充。但是当我在下拉列表中更改我的选择时,网格数据不会改变。
在下拉列表的更改事件中,我使用 ajax 调用控制器中的函数来获取网格的数据。
cshtml页面
<div>
<table id="gridmvc"></table>
</div>
<script>
$(document).ready(function(){
$("#DropDownID").change(function(){
$.ajax({
type: 'POST',
url : '/Test/GetGrid',
data: {selectedID: this.value},
success: function(data){
grid = $('#gridmvc').grid({
primaryKey: 'DeliveryID',
dataSource: data,
columns: [
{field: 'DeliveryID'},
{field: 'ProductName', sortable: true},
{field: 'Amount', sortable: true}
],
pager:{limit: 5}
});
},
error: function(){alert('error');}
});
});
});
</script>
测试控制器功能
public JsonResult GetGrid(int? page, int? limit, string sortBy, string direction, int selectedID)
{
List<ViewModel> records;
int total;
var query = Lync query to fetch data from Database using selectedID;
if (!string.IsNullOrEmpty(sortBy) && !string.IsNullOrEmpty(direction))
{
//code for sorting
}
else
{
query = query.OrderBy(q => q.DeliveryID);
}
if (page.HasValue && limit.HasValue)
{
//code for paging
}
else
{
records = query.ToList();
}
return this.Json(records, JsonRequestBehavior.AllowGet);
}
网格数据应根据新选择的下拉菜单刷新。
【问题讨论】:
标签: javascript json asp.net-mvc-5 grid asp.net-ajax