0

我正在尝试解决此代码的问题,该问题会在查看呈现且数据表为空时触发作为 js 警报的警告。我从来没有使用过这个插件,所以我不太了解它是如何工作的......所以,基本上在视图端是以下代码:

var dataTable;
$(function () {
dataTable = $('#dataTable').dataTable({
        "bProcessing": true,
        "bServerSide": true,
        "iDisplayLength": 100,
        "sAjaxSource": "@Url.Action("Attendance", "Reports")",
        "aoColumnDefs": [
        {"bSortable":false,"aTargets":[1,2,3,4,5,6,7,8,9,10,11,12,13,14]},
        {"bSearchable":false,"aTargets":[1,2,3,4,5,6,7,8,9,10,11,12,13,14]}
        ],
        "fnServerData":function(sSource, aoData,fnCallback){   
            var from= $('#DateSelect').val();
            var until= $('#DateSelect2').val();                
            aoData.push({"name":"From","value":from},{"name":"Until","value":until});                
            $.getJSON( sSource, aoData, function (json) {               
                fnCallback(json)
            });
        }           
    }).fnSetFilteringDelay(300);        
 });

在代码下方有一个输入按钮,单击时会触发 dataTable.fnDraw() 并且工作正常。因此,基本上,这里唯一的问题是第一次渲染视图时,因为 dataTable 为空并显示警告。

这是表为空时从控制器到视图的 json 响应示例(导致显示警告):

 {"iTotalRecords":0,"iTotalDisplayRecords":0,"sEcho":1,"aaData":[[]]}

这是查询某些效果良好的结果后的 json:

 {"iTotalRecords":17,"iTotalDisplayRecords":17,"sEcho":2,"aaData":[["Venue 1","<div align=center>30</div>","<div align=center>4</div>","<div align=center>13</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>3</div>","<div align=center>1</div>","<div align=center>7</div>","<div align=center>0</div>","<div align=center>3</div>","<div align=center>14</div>"],["Venue 2","<div align=center>41</div>","<div align=center>1</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>5</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>1</div>"],["Venue 3","<div align=center>20</div>","<div align=center>3</div>","<div align=center>15</div>","<div align=center>0</div>","<div align=center>5</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>8</div>","<div align=center>4</div>","<div align=center>4</div>","<div align=center>11</div>"],["Venue 4","<div align=center>46</div>","<div align=center>5</div>","<div align=center>10</div>","<div align=center>0</div>","<div align=center>5</div>","<div align=center>1</div>","<div align=center>20</div>","<div align=center>0</div>","<div align=center>7</div>","<div align=center>0</div>","<div align=center>15</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>28</div>"],["Venue 5","<div align=center>18</div>","<div align=center>9</div>","<div align=center>50</div>","<div align=center>2</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>10</div>","<div align=center>1</div>","<div align=center>3</div>","<div align=center>21</div>"],["Venue 6","<div align=center>10</div>","<div align=center>4</div>","<div align=center>40</div>","<div align=center>1</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>18</div>","<div align=center>3</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>4</div>","<div align=center>22</div>"],["Venue 7","<div align=center>44</div>","<div align=center>3</div>","<div align=center>6</div>","<div align=center>0</div>","<div align=center>7</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>1</div>","<div align=center>1</div>","<div align=center>4</div>"],["Venue 8","<div align=center>8</div>","<div align=center>1</div>","<div align=center>12</div>","<div align=center>1</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>6</div>","<div align=center>1</div>","<div align=center>2</div>","<div align=center>7</div>"],["Venue 9","<div align=center>23</div>","<div align=center>7</div>","<div align=center>30</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>8</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>15</div>"],["Venue 10","<div align=center>22</div>","<div align=center>1</div>","<div align=center>4</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>2</div>","<div align=center>1</div>","<div align=center>4</div>","<div align=center>1</div>","<div align=center>2</div>","<div align=center>7</div>"],["Venue 11","<div align=center>10</div>","<div align=center>2</div>","<div align=center>20</div>","<div align=center>1</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>5</div>","<div align=center>2</div>","<div align=center>10</div>","<div align=center>2</div>","<div align=center>5</div>","<div align=center>17</div>"],["Venue 12","<div align=center>17</div>","<div align=center>3</div>","<div align=center>17</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>4</div>","<div align=center>1</div>","<div align=center>1</div>","<div align=center>7</div>"],["Venue 13","<div align=center>23</div>","<div align=center>10</div>","<div align=center>43</div>","<div align=center>4</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>13</div>","<div align=center>1</div>","<div align=center>5</div>","<div align=center>23</div>"],["Venue 14","<div align=center>21</div>","<div align=center>2</div>","<div align=center>9</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>15</div>","<div align=center>1</div>","<div align=center>1</div>","<div align=center>17</div>"],["Venue 15","<div align=center>6</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>8</div>","<div align=center>1</div>","<div align=center>6</div>","<div align=center>0</div>","<div align=center>1</div>","<div align=center>14</div>"],["Venue 16","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>2</div>"],["Venue 17","<div align=center>25</div>","<div align=center>6</div>","<div align=center>24</div>","<div align=center>0</div>","<div align=center>2</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>0</div>","<div align=center>7</div>","<div align=center>3</div>","<div align=center>3</div>","<div align=center>13</div>"],["<b>TOTAL Venezuela</b>","<div align=center><b>364</b></div>","<div align=center><b>61</b></div>","<div align=center><b>16</b></div>","<div align=center><b>11</b></div>","<div align=center><b>35</b></div>","<div align=center><b>1</b></div>","<div align=center><b>2</b></div>","<div align=center><b>0</b></div>","<div align=center><b>47</b></div>","<div align=center><b>8</b></div>","<div align=center><b>114</b></div>","<div align=center><b>16</b></div>","<div align=center><b>35</b></div>","<div align=center><b>223</b></div>"]]}
4

2 回答 2

2

你应该寄回去;

{"iTotalRecords":0,"iTotalDisplayRecords":0,"sEcho":1,"aaData":[]}

否则它不会被解释为一个空数组,而是一个包含一个元素的数组是一个空数组

于 2011-12-06T13:45:18.230 回答
1

尝试发回"aaData":[]而不是"aaData":[[]](删除内括号)

于 2011-12-06T11:42:57.733 回答