【问题标题】:MVC ajax returns Requested unknown parameter errorMVC ajax 返回请求的未知参数错误
【发布时间】:2016-09-29 18:14:15
【问题描述】:
$(document).ready(function () {
    $("#getViewReportButton").click(function () {
        //alert("drop down = " + $('#ReportSelected').find(":selected").text());
        viewReports($('#ReportSelected').find(":selected").val());
    });
});

function viewReports(reportSelected) {
    var controller = "PortalReports";
    alert("View Reports = " + reportSelected);
    var tableSelector = "#datatable";

    var table = $(tableSelector).DataTable({
        "ajax": {
            "url": $("#basePath").val() + controller + "/GetReport"

            /*,    "dataScr": "data",
            "columns": [
                { "data": "MiPolicyTransactionId" },
                { "data": "PolicyReference" },
                { "data": "AgencyCode" }]*/
        }
    });
}

public JsonResult GetReport()
        {
            _context = new ReportDB();


            var result = _context.MiPolicyTransactions.Take(10).ToList();

            var theResults =
                result.Select(
                    x =>
                        new
                        {
                            MiPolicyTransactionId = x.MiPolicyTransactionId,
                            AgencyCode = x.AgencyCode,
                            CompanyId = x.CompanyId
                        }).ToList();

            //var results = new { value = 3, text = "Hello" };
            return Json(new { data = theResults}, JsonRequestBehavior.AllowGet);
        }


<h2>@ViewBag.Title</h2>
<p>Please choose a Report:</p>
<form  id="reportForm" method="post">
    <div class="fieldRow ui-widget-content ui-corner-all">
        <div class="field">
            @Html.DropDownListFor(x => x.ReportSelected, Model.ReportOptions, "Please Select")
            <input id="getViewReportButton" type="submit" value="View Report" />
            <span id="searchLoader" class="ajaxLoader"></span>
        </div>
    </div>
</form>
<br />
<table  id="datatable" class="display DataTable">
    <thead>
        <tr>
            <th>MiPolicyTransactionId</th>
            <th>PolicyReference</th>
            <th>AgencyCode</th>
        </tr>
    </thead>
    <tbody></tbody>

</table>

我有上面的代码,它不会呈现并为第 0 行提供请求的未知参数“0”。有关此错误的更多信息,请参阅http://datatables.net/tn/4

我尝试更改一堆参数,但无法正常工作。

{data: [{MiPolicyTransactionId: 18, AgencyCode: "CJPTEST", CompanyId: "BQ"},…]}
data
:
[{MiPolicyTransactionId: 18, AgencyCode: "CJPTEST", CompanyId: "BQ"},…]
0
:
{MiPolicyTransactionId: 18, AgencyCode: "CJPTEST", CompanyId: "BQ"}
1
:
{MiPolicyTransactionId: 19, AgencyCode: "CJPTEST", CompanyId: "BQ"}
2
:
{MiPolicyTransactionId: 20, AgencyCode: "CJPTEST", CompanyId: "BQ"}
3
:
{MiPolicyTransactionId: 21, AgencyCode: "CJPTEST", CompanyId: "BQ"}
4
:
{MiPolicyTransactionId: 22, AgencyCode: "CJPTEST", CompanyId: "BQ"}
5
:
{MiPolicyTransactionId: 23, AgencyCode: "CJPTEST", CompanyId: "BQ"}
6
:
{MiPolicyTransactionId: 24, AgencyCode: "CJPTEST", CompanyId: "BQ"}
7
:
{MiPolicyTransactionId: 25, AgencyCode: "CJPTEST", CompanyId: "BQ"}
8
:
{MiPolicyTransactionId: 26, AgencyCode: "CJPTEST", CompanyId: "BQ"}
9
:
{MiPolicyTransactionId: 27, AgencyCode: "CJPTEST", CompanyId: "BQ"}

XHR 预览看起来和上面一样好,但是当给出错误的警告框关闭时它就消失了,我想不出别的了!

第一个错误

第二个错误

转到这里

【问题讨论】:

    标签: jquery ajax model-view-controller datatables


    【解决方案1】:

    来自@davidkonrad 出色的回答 Jquery DataTables.net: Failing to put negative int in table

    您正在混合使用 ajax 选项和其他选项。而不是

    ajax: {
        url: '@Url.Content("~/api/cas/nodes/all/lastcondition/")',
        "columns": [
            { "type" : "num", "data": "Id"},
            { "data": "Name" },
            { "data": "Alias" },
            { "data": "DateQuery" },
            { "type" : "num", "data": "Condition" },
            { "type" : "num", "data": "TimeSecLastCondition" }
        ]
    })
    

    你应该这样做

    ajax: {
        url: '@Url.Content("~/api/cas/nodes/all/lastcondition/")'
    },
    columns: [
         { "type" : "num", "data": "Id"},
         { "data": "Name" },
         { "data": "Alias" },
         { "data": "DateQuery" },
         { "type" : "num", "data": "Condition" },
         { "type" : "num", "data": "TimeSecLastCondition" }
      ]
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-10
      • 2014-01-14
      • 2019-09-16
      • 2014-04-03
      • 1970-01-01
      • 2015-06-02
      相关资源
      最近更新 更多