超出堆栈空间的jquery(数据表)

本文关键字:数据表 jquery 堆栈 空间 | 更新日期: 2023-09-27 17:50:22

在VS2013中第一次尝试了一些MVC,花了一点时间来获得一个基本的测试/演示运行。所以我想我应该试着让datatable和它一起工作。但是,在查看应用程序索引时。cshtml,它一直抛出堆栈空间错误(与Chrome和IE8测试)。我已经尝试创建一个空的以及占位符。

这是我的bundlececonfig .cs

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-1.10.2.js"));

_layout。cshtml

<title>@ViewBag.Title - My ASP.NET Application</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@RenderSection("scripts", required: false)

和我自己的index.cshtml

的相关部分
<table class="table" id="plist">
<thead>
    <tr>
        <th>@Html.DisplayNameFor(model => model.1)</th>
        <th>@Html.DisplayNameFor(model => model.2)</th>
        <th>@Html.DisplayNameFor(model => model.3)</th>
        <th>@Html.DisplayNameFor(model => model.4)</th>
        <th>@Html.DisplayNameFor(model => model.5)</th>
        <th>@Html.DisplayNameFor(model => model.6)</th>
        <th>@Html.DisplayNameFor(model => model.7)</th>
    </tr>
</thead>
<tbody>
@foreach (var item in Model) 
{
   <tr>
    <td>@Html.DisplayFor(modelItem => item.1)</td>
    <td>@Html.DisplayFor(modelItem => item.2)</td>
    <td>@Html.DisplayFor(modelItem => item.3)</td>
    <td>@Html.DisplayFor(modelItem => item.4)</td>
    <td>@Html.DisplayFor(modelItem => item.5)</td>
    <td>@Html.DisplayFor(modelItem => item.6)</td>
    <td>@Html.DisplayFor(modelItem => item.7)</td>
    <td>@Html.ActionLink("Edit", "Edit", new { id=item.1 }) |
        @Html.ActionLink("Details", "Details", new { id=item.1 }) |
        @Html.ActionLink("Delete", "Delete", new { id=item.1 })
    </td>
</tr>
}</tbody>
</table>
<link href="~/Content/jquery.dataTables.css" rel="stylesheet" />
<script src="~/Scripts/jquery.dataTables.js"></script>
<script type="text/javascript" charset="utf8">
    $(document).ready(function() {$('#plist').dataTable();});
</script>

IE调试器在dataTables脚本文件中抛出异常:

$.fn.dataTable = function ( opts ) {
    return $(this).dataTable( opts ).api();
};

我意识到这个问题很广泛,但是有什么常见的问题我可以检查一下吗?

超出堆栈空间的jquery(数据表)

此函数

$.fn.dataTable = function ( opts ) {
    return $(this).dataTable( opts ).api();
};

似乎总是调用自己,这将导致无限递归,这将导致堆栈溢出(堆栈空间不足)错误。