ASP.NET MVC에서 Kendo 그리드 필터를 동작에 보내려면 어떻게해야합니까?검도 필터 객체를 컨트롤러 동작으로 보내려면 어떻게해야합니까?
이 구조를 사용하고 있는데 작동하지만 컨트롤러에서 보내지는 값을 얻을 수 없습니다. 실행중인 매개 변수 '모델'이 비어 있습니다.
[HttpPost]
public ActionResult Print(object model)
{
var r = Request;
return View();
}
$('#btn-print').click(function() {
filter = $('#trips').data('kendoGrid').dataSource.filter();
$.ajax({
type: 'post',
url: '@Url.Action("Print", "Trips")',
//dataType: 'json',
data: filter,
success: function (d) {
var win = window.open('about:blank');
with (win.document) {
open();
write(d);
close();
}
//alert('print click.');
}
})
});
ASP.NET 액션 감사합니다. :)
안녕하세요, 너무 광범위한 답변을 주셔서 감사합니다; 하지만 실제로하고 싶은 것은 실제로 필터링 된 그리드와 함께 PDF를 보여주는 것입니다 ... 그리고 만약 내가 잘 이해한다면, 여러분은 다음과 같이 씁니다 : 데이터로드 후 팝업 창과 응답을 표시합니다. 나는 사용자가 그리드를 보여주고, 데이터를 필터링 한 다음 현재 데이터를 프린트하고 있습니다. 그래서 현재 필터를 보내고 싶습니다. 그리고 네, 필터를 위해 강력한 형식의 클래스를 만들어야합니다. Btw : "operator"는 키워드이지만 @operator를 사용할 수 있습니다. –
그리고 문자열로 속성 "유형"을 추가하는 것이 유용합니다 - 내가 원하는 값의 유형을 알고 싶습니다. 왜냐하면 "where"조건을 linq 쿼리에서 생성하기를 원하기 때문입니다. :) –
나에게 제안 된 dataSource 접근법은 Trips 컨트롤러에서 인쇄 작업에 현재 그리드 필터를 보냅니다 (다른 것들과 함께). BTW - @ 오퍼레이터 덕분에, 나는 그것을 몰랐다. – ceaggregation