2

我想通过使用jquery datatables plug-in将更多功能添加到我的MVC应用程序中的表中。我已经添加了以下到我的index.cshtml页面,试图打开表“dailyreporttable”从标准表到一个DataTable:jQuery Datatables插件不能与ASP.NET MVC一起工作

<script src="~/Scripts/DataTables-1.9.4/media/js/jquery.dataTables.js" type="text/javascript"></script> 
<script src="~/Scripts/jquery-1.10.2.min.js" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#dailyreporttable').dataTable(); 
    }); 
</script> 

然而,当我预览该网页在浏览器中的数据表加上有没有被应用到表格中,并且仍然作为标准表格。我没有任何有关MVC或Web开发的经验,所以我不确定我做错了什么。

+0

尝试切换脚本引用。浏览器按顺序加载脚本,并且需要在jQuery插件之前引用jQuery。 –

回答

0

尝试改变脚本的加载顺序:

<script src="~/Scripts/jquery-1.10.2.min.js" type="text/javascript"></script> 
<script src="~/Scripts/DataTab....ataTables.js" type="text/javascript"></script> 

因为基于datatables jQuery插件,它需要jQuery方法来运行,所以你必须首先包括jQuery库,使所有需要的方法得到可用于datatable插件。

+0

刚刚尝试过,同样的事情正在发生。我是否需要在别处添加对脚本的引用,例如BundleConfig.cs文件或_layout.cshtml文件?这是我第一次在MVC中使用脚本,所以我不确定什么是正确的过程。 – Kevin

1

您应该将这些引用添加到您的BundleConfig.cs文件中。

你可能有一个包被加载_Layout.cshtml:

@Scripts.Render("~/bundles/myBundle") 

所以jQuery和数据表引用添加到特定的捆绑,例如:

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

您可以检查js文件正在通过查看Firebug Net标签加载(如果您使用的是Firefox)

0
<head> 
<script src="~/Scripts/jquery-1.10.2.min.js" type="text/javascript"></script> 
<script src="~/Scripts/DataTables-1.9.4/media/js/jquery.dataTables.js" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#dailyreporttable').dataTable(); 
    }); 
</script> 
</head> 
<body> 
<table id="dailyreporttable"> 
</table> 
</body> 

https://datatables.net/examples/basic_init/zero_configuration.html

1

你有参考的css文件? rel =“stylesheet”type =“text/css”href =“../../ media/css/jquery.dataTables.css”

+1

是的,我已经添加了CSS文件的引用,但它仍然无法加载 – Kevin

相关问题