昨天在做 Jquery DataTables 的时候,遇到的一个问题,我使用MVC,在tables上加入了一个actionlink的href。但是在运行起来的时候,报错:

DataTables warning: Requested unknown parameter '3' from the data source for row 0

通过search一下网上大神们的解决方法,所以我就把blogs上的解决方法给copy过来了,这是原文链接地址 http://seaboycs.iteye.com/blog/2015230

希望能够帮助遇到同样问题的朋友,也给自己的工作总结一下

今天遇到一个Datatables常见的问题,搞了好久没弄好,查看baidu也没有成果,在google上查到了原因。

问题:

DataTables warning: Requested unknown parameter '3' from the data source for row 0

JS:

  1. function initializeEvents() {
  2. $('.datatable').dataTable({
  3. "sDom": "<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span12'i><'span12 center'p>>",
  4. "bServerSide" : true,
  5. "sAjaxSource" : "/uploadDemo/admin/photo/list.spring",
  6. "sServerMethod" : "POST" ,
  7. "bProcessing" : false,
  8. "bPaginate": true,
  9. "bLengthChange" : true,
  10. "iDisplayLength" : 10,
  11. "fnAdjustColumnSizing" : false,
  12. "bStateSave": false,
  13. "bSort":false,
  14. "bFilter":false,
  15. "aoColumnDefs" : makeCollumnDef(),
  16. "aoColumns" : makeCollomns(),
  17. "sPaginationType": "bootstrap",
  18. "oLanguage": {
  19. "sLengthMenu": "_MENU_ records per page"
  20. }
  21. } );
  22. }
  23. function makeCollumnDef() {
  24. return [
  25. { "fnRender" : function (oObj, sVal) {
  26. return oObj.aData.id;
  27. },
  28. "bVisible" : true ,
  29. "aTargets" : [ 0 ]
  30. },
  31. { "fnRender" : function (oObj, sVal) {
  32. return oObj.aData.name;
  33. },
  34. "bVisible" : true ,
  35. "aTargets" : [ 1 ]
  36. },
  37. { "fnRender" : function (oObj, sVal) {
  38. return "<img src='/uploadDemo/" +oObj.aData.path +"' width=50px height=40px />";
  39. },
  40. "bVisible" : true ,
  41. "aTargets" : [ 2 ]
  42. },
  43. { "fnRender" : function (oObj, sVal) {
  44. return createAction(oObj.aData.id);
  45. },
  46. "bVisible" : true ,
  47. "aTargets" : [ 3 ]
  48. }];
  49. }
  50. function makeCollomns(){
  51. return [{ "mDataProp" : "id", "sHeight":"15px"},
  52. { "mDataProp" : "name"},
  53. { "mDataProp" : "path"}}];
  54. }
  55. function createAction(id) {
  56. var inhtml = '<a class="btn btn-success" href="/uploadDemo/admin/photo/view.spring?id=' + id + '">';
  57. inhtml += '<i class="icon-zoom-in icon-white"></i>View</a> ';
  58. inhtml += '<a class="btn btn-info" href="/uploadDemo/admin/photo/preUpdate.spring?id=' + id + '">';
  59. inhtml += '<i class="icon-edit icon-white"></i>Edit</a> ';
  60. inhtml += '<a class="btn btn-danger" href="/uploadDemo/admin/photo/delete.spring?id=' + id + '">';
  61. inhtml += '<i class="icon-trash icon-white"></i>Delete</a>';
  62. return inhtml;
  63. }

参考了 https://gist.github.com/kagemusha/1660712 这个大神的解决方案:

意思就是 aoColumns 和 aoColumnDefs的个数必须相等,否则会出错,由于我在表格中加入了一个Action列,导致aoColumns 和 aoColumnDefs的数目不等,就出了上面的错,该法就比较简单:

在 Java Bean 中添加一个任意字段,把他添加到aoColumnDefs 就好了。

  1. public class PhotoBean {
  2. private int id;
  3. private String name;
  4. private String path;
  5. private String checked;
  1. function makeCollomns(){
  2. return [{ "mDataProp" : "id", "sHeight":"15px"},
  3. { "mDataProp" : "name"},
  4. { "mDataProp" : "path"},
  5. { "mDataProp" : "checked"}];

我添加了一个checked的字符串,问题解决。

Jquery DataTables warning : Requested unknown from the data source for row 0的更多相关文章

  1. DataTables warning : Requested unknown parameter '5' from the data source for row 0

    在该项目中我使用了jquery.dataTables.js来作为我的前端数据表格. 表格的官网地址:https://www.datatables.net/ 一.jsp部分代码片段如下: <tab ...

  2. DataTables warning : Requested unknown parameter '0' from the data source for row 0错误

    在做datatables的项目,从后台取得数据后,返回给datatables界面时会报下面的错误: DataTables warning : Requested unknown parameter ' ...

  3. DataTables warning: table id=dataTable - Requested unknown parameter &#39;acceptId&#39; for row 0. For more

    重点内容 DataTables warning: table id=dataTable - Requested unknown parameter 'acceptId' for row 0. For ...

  4. DataTables warning requested unknown parameter

    This is possibly the most cryptic warning message that DataTables will show. It is a short error mes ...

  5. DataTables warning (table id = 'myTable'): Requested unknown parameter '0' from the data source for row 0

    第一种方式:不用在js里设置列Html: <table id="myTable"> <thead> <tr> <th>Title-1 ...

  6. data source 和initial catalog

    initial catalog与database的区别是什么Initial Catalog: DataBase: 两者没有任何区别只是名称不一样,就好像是人类的真实姓名与曾用名一样..都可以叫你. * ...

  7. DataTables warning: table id=data-table - Requested unknown parameter '3' for row 0.

    本文为博主原创,未经允许,不得转载: 在使用jquery 的datatable时,报错在页面弹出弹出框,并提示以下内容: DataTables warning: table id=data-table ...

  8. jquery dataTables.min.js API

    demo: http://datatables.net/release-datatables/examples/api/select_single_row.html 选择一行http://datata ...

  9. jquery datatables api (转)

    学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/20069 ...

随机推荐

  1. Learning note for Binding and validation

    Summary of my learning note for WPF Binding Binding to DataSet. when we want to add new record, we s ...

  2. 硬件描述语言Verilog设计经验总结

    一.硬件描述语言Verilog 粗略地看Verilog与C语言有许多相似之处.分号用于结束每个语句,注释符也是相同的(/* ... */和// 都是熟悉的),运算符"=="也用来测 ...

  3. 个人软件过程(psp)需求文档

    1.  业务需求 1.1 应用背景 开发软件项目进度计划总是那么不准确,延期经常出现,跟可恨的是甚至无法给出一个相对比较明确的延迟时间.很大 因素在于分配给开发人员的完成时间与开发人员的实际完成时间有 ...

  4. 关于spring mvc MaxUploadSizeExceededException 死循环解决方案

    当看到这文章的时候相信你现在应该遇到这样的问题了,我也是自己遇到了后来找到解决方案了记录下来,如果下次遇到就可以直接解决了. 至于为什么会出现这样的情况,可以看这篇文章:https://bz.apac ...

  5. 设置浮点数的显示精度&precision(0)

    /*    设置浮点数的显示精度    cout.precision(int)可以设置浮点数的显示精度(不包括小数点)        注: 1.如果设置的精度大于浮点数的位数,如果浮点数能根据IEEE ...

  6. 封装insertAfter、addClass、格式化时间

    insertAfter,在JS节点操作中,并没有insertAfter方法,因此需要重新封装 function insertAfter(newEle,targetNode) { var oParent ...

  7. 任务:写一个tomcat自启动脚本

    写一篇<gitlab无法启动了应该怎么办>

  8. 关于java.lang.OutOfMemoryError: Java heap space的错误分析

    今天无意间遇到这个错误:java.lang.OutOfMemoryError: Java heap space 问题出现原因:使用a标签实现快速下载[当然已经实现了,但想了想还是要归纳解决这类问题] ...

  9. 如何在Android模拟器上安装apk文件

    1.运行SDK Manager,选择模拟器,并运行模拟器 SDK Manager应用 2.将需要安装的apk文件复制到platform-tools目录下(默认在:D:\tools\android\ad ...

  10. Upgrading to Java 8——第一章 Lambda表达式

    第一章 Lambda表达式 Lamada 表达式是Java SE 8中最重要的新特性,长期以来被认为是在Java中缺失的特性,它的出现使整个java 语言变得完整.至少到目前,在这节中你将学习到什么是 ...