我正在尝试修复此代码的问题,该问题在呈现已查看并且数据表为空时触发警告作为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为空并且显示警告。
以下是当表为空(导致警告显示)时从Controller到View的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>"]]}
答案 0 :(得分:2)
你应该发回来;
{"iTotalRecords":0,"iTotalDisplayRecords":0,"sEcho":1,"aaData":[]}
否则它不会被解释为空数组,而是一个带有一个元素的数组,它是一个空数组
答案 1 :(得分:1)
尝试发回"aaData":[]
而不是"aaData":[[]]
(删除内部括号)