1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
|
// DATA_TEMPLATE: js_data
oTest.fnStart( "fnCreatedRow tests" );
$(document).ready( function () {
var tmp = 0;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function () {
tmp++;
}
} );
oTest.fnTest(
"Row created is called once for each row on init",
null,
function () { return tmp===57; }
);
oTest.fnTest(
"Created isn't called back on other draws",
function () { $('#example th:eq(1)').click(); },
function () { return tmp===57; }
);
oTest.fnTest(
"Three arguments for the function",
function () {
oSession.fnRestore();
tmp = true;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function () {
if ( arguments.length !== 3 ) {
tmp = false;
}
}
} );
},
function () { return tmp; }
);
oTest.fnTest(
"First argument is a TR element",
function () {
oSession.fnRestore();
tmp = true;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function () {
if ( arguments[0].nodeName !== "TR" ) {
tmp = false;
}
}
} );
},
function () { return tmp; }
);
oTest.fnTest(
"Second argument is an array with 5 elements",
function () {
oSession.fnRestore();
tmp = true;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function () {
if ( arguments[1].length !== 5 ) {
tmp = false;
}
}
} );
},
function () { return tmp; }
);
oTest.fnTest(
"Third argument is the data source for the row",
function () {
oSession.fnRestore();
tmp = true;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function () {
if ( arguments[1] !== this.fnSettings().aoData[ arguments[2] ]._aData ) {
tmp = false;
}
}
} );
},
function () { return tmp; }
);
oTest.fnTest(
"TR element is tied to the correct data",
function () {
oSession.fnRestore();
tmp = false;
$('#example').dataTable( {
"aaData": gaaData,
fnCreatedRow: function (tr, data, index) {
if ( data[1] === "Firefox 1.0" ) {
if ( $('td:eq(3)', tr).html() == "1.7" ) {
tmp = true;
}
}
}
} );
},
function () { return tmp; }
);
oTest.fnComplete();
} );
|