Json对象没有从MVC绑定到jqgrid [英] Json object not binding to jqgrid from MVC

查看:67
本文介绍了Json对象没有从MVC绑定到jqgrid的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的控制器中有json对象,它没有绑定到GET方法的jqGrid。





Controller.cs
---------------------

I have json object in my controller which is not binding to jqGrid of GET method.


Controller.cs
---------------------

public ActionResult Index()
        {
            
                            return View();
        }
        [HttpGet]
        public JsonResult ImportKFSData(int rows,string sidx,string sord,int page)
        {

            string startDate = "01/01/2016";
             string endDate = "01/15/2016";
 var _KFSImportList = KFSPaymentDetailList.GetKFSImportList(Convert.ToDateTime(startDate),Convert.ToDateTimeendDate));
            var result = new
            {
                total = 10,
                Page = page.ToString(),
                records = "1",
                Data = _KFSImportList.Select(x => new
                {
                    x.PaymentDate,
                    x.PayeeName,
                    x.SrcDocType,
                    x.Amount,
                    x.CheckNumber,
                    x.ObjectCode
                }).ToArray()
            };

            return Json(result,JsonRequestBehavior.AllowGet);

        }



Index.cshtml

-------------


Index.cshtml
-------------

<div class="col-xs-9 col-sm-9 col-md-9 col-lg-9">
                <table id="KFSImporttbl" class="1099MiscJQGrid table table-bordered table-striped" style="table-layout: fixed; height: 200px"></table>
                <div id="pager"></div>
            </div>



< br $> b $ b




//    var mydata = [
    //{ "PaymentDate": "01/01/2015", "PayeeName": "test", "SrcDocType": "Check", "Amount": 100, "CheckNumber": 1234, "ObjectCode": 4525 },
    //  { "PaymentDate": "01/01/2015", "PayeeName": "test", "SrcDocType": "Check", "Amount": 100, "CheckNumber": 1578, "ObjectCode": 4525 }
    //    ];
    $(document).ready(function () {
        debugger;
        $('#KFSImporttbl').jqGrid({
            datatype: 'json',
            mtype: 'GET',
            ajaxGridOptions: { contentType: 'application/json; charset=utf-8' },
            url: '@Url.Action("ImportKFSData", "KFSReportablePayments")',
            colNames: ['PaymentDate', 'PayeeName', 'SrcDocType', 'Amount', 'Check Number', 'Object Code'],
            colModel: [
                { name: 'PaymentDate', index: 'PaymentDate', width: 20 },
                 { name: 'PayeeName', index: 'PayeeName', width: 50 },
                  { name: 'SrcDocType', index: 'SrcDocType', width: 20 },
                   { name: 'Amount', index: 'Amount', width: 15 },
                    { name: 'CheckNumber', index: 'CheckNumber', width: 20 },
                     { name: 'ObjectCode', index: 'ObjectCode', width: 10 }

            ],
            gridview: true,
            rowNum: 10,
            rowList: [10, 20, 30],
            pager: '#pager',
            viewrecords: true,
            autowidth: true,
            height: 'auto',
            width: 'auto',
            success: function () {


            },
        }).navGrid("#pager", { edit: false, add: false, del: false });

    });





我的尝试:



实际上我试图绑定动态数据。

我尝试过在index.cshtml页面中提到的本地数据。

工作正常。

当我从controller.it给出静态数据时没有绑定。

我没有看到控制台有任何错误尝试使用动态或静态对象。





What I have tried:

Actually I was trying to bind dynamic data.
I have tried with local data which i was mentioned in index.cshtml page.
It was working fine.
When I have given static data from controller.it was not binding.
I didn't see any error in console while i am trying with dynamic or static object.

//var result = new
            //{

            //    total = 10,
            //    Page = page.ToString(),
            //    records = "1",
            //    rows = GetKFSList()
            //};
return Json(result,JsonRequestBehavior.AllowGet);<
 private List<kfspaymentdetail> GetKFSList()
        {
            var KFSPaymentList = new List<kfspaymentdetail>();
            {
                KFSPaymentList.Add(new KFSPaymentDetail
                {
                    PaymentDate = Convert.ToDateTime("01/01/2015"),
                    PayeeName = "test",
                    SrcDocType = "AM",
                    Amount = 100,
                    CheckNumber = 12541,
                    ObjectCode = 4525
                });
            };

            return KFSPaymentList;
        }



任何人都能帮我解决我错过的问题吗??


Can any one help me what I am missing..?

推荐答案

document )。ready( function (){
debugger ;
(document).ready(function () { debugger;


' #KFSImporttbl')。jqGrid({
datatype:' json'
mtype: ' GET'
ajaxGridOptions:{contentType:' application / json; charset = utf-8'},
url:' @ Url.Action(ImportKFSData,KFSReportablePayments)'
colNames:[' PaymentDate '' PayeeName'' SrcDocType'' 金额'' 检查号码' 对象代码'],
colModel:[
{name:' PaymentDate',index:' PaymentDate',width : 20 },
{name:' PayeeName',索引:' PayeeName',width: 50 },
{name:' SrcDocType',索引:' SrcDocType',宽度: 20 },
{name:' 金额',index:' 金额',宽度: 15 },
{name:' CheckNumber',index:' CheckNumber',宽度: 20 },
{name:' ObjectCode',index: ' ObjectCode',width: 10 }

],
gridview: true
rowNum: 10
rowList:[ 10 20 30 ],
寻呼机:' #pager'
viewrecords: true
autowidth: true
height:' auto'
width :' auto'
成功: function (){


},
})。navGrid( #pager,{edit: false ,添加: false , del: false });

});
('#KFSImporttbl').jqGrid({ datatype: 'json', mtype: 'GET', ajaxGridOptions: { contentType: 'application/json; charset=utf-8' }, url: '@Url.Action("ImportKFSData", "KFSReportablePayments")', colNames: ['PaymentDate', 'PayeeName', 'SrcDocType', 'Amount', 'Check Number', 'Object Code'], colModel: [ { name: 'PaymentDate', index: 'PaymentDate', width: 20 }, { name: 'PayeeName', index: 'PayeeName', width: 50 }, { name: 'SrcDocType', index: 'SrcDocType', width: 20 }, { name: 'Amount', index: 'Amount', width: 15 }, { name: 'CheckNumber', index: 'CheckNumber', width: 20 }, { name: 'ObjectCode', index: 'ObjectCode', width: 10 } ], gridview: true, rowNum: 10, rowList: [10, 20, 30], pager: '#pager', viewrecords: true, autowidth: true, height: 'auto', width: 'auto', success: function () { }, }).navGrid("#pager", { edit: false, add: false, del: false }); });





我的尝试:



实际上我试图绑定动态数据。

我尝试过在index.cshtml页面中提到的本地数据。

工作正常。

当我从controller.it给出静态数据时没有绑定。

我没有看到控制台有任何错误尝试使用动态或静态对象。





What I have tried:

Actually I was trying to bind dynamic data.
I have tried with local data which i was mentioned in index.cshtml page.
It was working fine.
When I have given static data from controller.it was not binding.
I didn't see any error in console while i am trying with dynamic or static object.

//var result = new
            //{

            //    total = 10,
            //    Page = page.ToString(),
            //    records = "1",
            //    rows = GetKFSList()
            //};
return Json(result,JsonRequestBehavior.AllowGet);<
 private List<kfspaymentdetail> GetKFSList()
        {
            var KFSPaymentList = new List<kfspaymentdetail>();
            {
                KFSPaymentList.Add(new KFSPaymentDetail
                {
                    PaymentDate = Convert.ToDateTime("01/01/2015"),
                    PayeeName = "test",
                    SrcDocType = "AM",
                    Amount = 100,
                    CheckNumber = 12541,
                    ObjectCode = 4525
                });
            };

            return KFSPaymentList;
        }



任何人都能帮我解决我错过的问题..?


Can any one help me what I am missing..?


这篇关于Json对象没有从MVC绑定到jqgrid的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆