Skip to content

Commit cae296f

Browse files
committed
2 parents 5dd8bef + 920acc2 commit cae296f

File tree

8 files changed

+77
-18
lines changed

8 files changed

+77
-18
lines changed

Mvc.JQuery.Datatables.Example/Controllers/HomeController.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,10 @@ public DataTablesResult<UserView> GetUsers(DataTablesParam dataTableParam)
5151

5252
public class UserView
5353
{
54+
[DataTables(SortDirection = SortDirection.Ascending)]
5455
public int Id { get; set; }
5556

56-
[DataTables( DisplayName = "Full Name")]
57+
[DataTables(DisplayName = "Full Name", MRenderFunction = "test")]
5758
public string Name { get; set; }
5859

5960

Mvc.JQuery.Datatables.Example/Views/Home/Index.cshtml

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public class SomeController : Controller
6666
.FilterOn("Id").NumberRange();
6767
//.FilterOn("Number").CheckBoxes(Enum.GetNames(typeof(Numbers)));
6868
vm.StateSave = true;
69-
69+
//vm.DrawCallback = "drawCallback";
7070
7171
if (Request.QueryString["lang"] == "de")
7272
{
@@ -92,14 +92,22 @@ public class SomeController : Controller
9292
}.ToJsonString();
9393
}
9494
}
95+
96+
<script type="text/javascript">
97+
function test(data, type, full) {
98+
return '<i>' + data + '</i>';
99+
}
100+
101+
function drawCallback(oSettings) {
102+
console.log('fnDrawCallback fired');
103+
console.log(oSettings);
104+
}
105+
</script>
95106
@Html.Partial("DataTable", vm)
96107

97108
<br />
98109

99110

100-
101-
102-
103111
<div>
104112
@if (Request.QueryString["lang"] != "de")
105113
{

Mvc.JQuery.Datatables.Templates/Views/Shared/DataTable.cshtml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
}
3636
var $table = $('#@Model.Id');
3737
var dt = $table.dataTable({
38+
"aaSorting": @Html.Raw(Model.ColumnSortingString),
3839
"bProcessing": true,
3940
"bStateSave": @Html.Raw(Model.StateSave ? "true" : "false"),
4041
"bServerSide": true,
@@ -58,18 +59,23 @@
5859
{
5960
<text>
6061
,"oLanguage": @Html.Raw(@Model.Language)
61-
62+
</text>
63+
}
64+
@if (!string.IsNullOrEmpty(Model.DrawCallback))
65+
{
66+
<text>
67+
,"fnDrawCallback": @Html.Raw(Model.DrawCallback)
6268
</text>
6369
}
6470
});
6571
@if (Model.ColumnFilter)
6672
{
67-
<text>
68-
dt.columnFilter({
69-
sPlaceHolder: "head:before",
70-
aoColumns: [@Html.Raw(Model.ColumnFiltersString)]
71-
});
72-
</text>
73+
<text>
74+
dt.columnFilter({
75+
sPlaceHolder: "head:before",
76+
aoColumns: [@Html.Raw(Model.ColumnFiltersString)]
77+
});
78+
</text>
7379
}
7480
})();
7581
</script>

Mvc.JQuery.Datatables.sln.DotSettings.user

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@
55
<s:Boolean x:Key="/Default/Housekeeping/SolutionSettingsUpgraded/IsUpgraded/@EntryValue">True</s:Boolean>
66
<s:Boolean x:Key="/Default/Housekeeping/UnitTestingMru/UnitTestSessionPersistentData/=98F4BC003F814C2BA87B6120AD0009E9/@KeyIndexDefined">True</s:Boolean>
77
<s:String x:Key="/Default/Housekeeping/UnitTestingMru/UnitTestSessionPersistentData/=98F4BC003F814C2BA87B6120AD0009E9/Name/@EntryValue">ThingsAreCalledCorrectly</s:String>
8-
<s:String x:Key="/Default/Housekeeping/UnitTestingMru/UnitTestSessionPersistentData/=98F4BC003F814C2BA87B6120AD0009E9/XmlSerializedElements/@EntryValue">&lt;Session&gt;&lt;Elements&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq.ExecuteParams" ParentId="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParams" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework.ExecuteParams" ParentId="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.EntityFramework" MethodName="ExecuteParams" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq.ExecuteParamsAndTransform" ParentId="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParamsAndTransform" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework.ExecuteParamsAndTransform" ParentId="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParamsAndTransform" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.FilterTests" MethodName="SearchQueryTests" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^123$&amp;quot;,System.Int32,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^456$&amp;quot;,System.Int32,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Ched&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Cheddar&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Cheddar$&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^False$&amp;quot;,System.Boolean,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^True$&amp;quot;,System.Boolean,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;123&amp;quot;,System.Int32,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;456&amp;quot;,System.Int32,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;asdf&amp;quot;,System.String,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;Cheddar&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;False&amp;quot;,System.Boolean,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;True&amp;quot;,System.Boolean,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;/Elements&gt;&lt;/Session&gt;</s:String></wpf:ResourceDictionary>
8+
<s:String x:Key="/Default/Housekeeping/UnitTestingMru/UnitTestSessionPersistentData/=98F4BC003F814C2BA87B6120AD0009E9/XmlSerializedElements/@EntryValue">&lt;Session&gt;&lt;Elements&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestFixtureElement" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq.ExecuteParams" ParentId="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParams" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework.ExecuteParams" ParentId="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.EntityFramework" MethodName="ExecuteParams" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.Linq.ExecuteParamsAndTransform" ParentId="Mvc.JQuery.DataTables.Tests.Linq" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParamsAndTransform" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.EntityFramework.ExecuteParamsAndTransform" ParentId="Mvc.JQuery.DataTables.Tests.EntityFramework" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.Linq" MethodName="ExecuteParamsAndTransform" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests" type="NUnitTestElement" TypeName="Mvc.JQuery.DataTables.Tests.FilterTests" MethodName="SearchQueryTests" Project="53671C41-666D-4269-A12A-BA6C2F209E7A" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^123$&amp;quot;,System.Int32,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^456$&amp;quot;,System.Int32,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^False$&amp;quot;,System.Boolean,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Ched&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Cheddar&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^Cheddar$&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;^True$&amp;quot;,System.Boolean,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;123&amp;quot;,System.Int32,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;456&amp;quot;,System.Int32,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;asdf&amp;quot;,System.String,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;False&amp;quot;,System.Boolean,False)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;Cheddar&amp;quot;,System.String,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;UnitTestElement Provider="nUnit" Id="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests(&amp;quot;True&amp;quot;,System.Boolean,True)" ParentId="Mvc.JQuery.DataTables.Tests.FilterTests.SearchQueryTests" type="NUnitRowTestElement" /&gt;&lt;/Elements&gt;&lt;/Session&gt;</s:String></wpf:ResourceDictionary>

Mvc.JQuery.Datatables/DataTableConfigVm.cs

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@ public class ColDef
1717
public bool Sortable { get; set; }
1818
public Type Type { get; set; }
1919
public bool Searchable { get; set; }
20+
public SortDirection SortDirection { get; set; }
21+
public string MRenderFunction { get; set; }
2022

21-
public static ColDef Create(string name, string p1, Type propertyType, bool visible = true, bool sortable = true)
23+
public static ColDef Create(string name, string p1, Type propertyType, bool visible = true, bool sortable = true, SortDirection sortDirection = SortDirection.None, string mRenderFunction = null)
2224
{
23-
return new ColDef() {Name = name, DisplayName = p1, Type = propertyType, Visible = visible, Sortable = sortable};
25+
return new ColDef() {Name = name, DisplayName = p1, Type = propertyType, Visible = visible, Sortable = sortable, SortDirection = sortDirection, MRenderFunction = mRenderFunction };
2426
}
2527
}
2628
public class DataTableConfigVm
@@ -109,12 +111,22 @@ public string Dom
109111
}
110112
}
111113

114+
public string ColumnSortingString
115+
{
116+
get
117+
{
118+
return convertColumnSortingToJson(Columns);
119+
}
120+
}
121+
112122
public bool ShowPageSizes { get; set; }
113123

114124
public bool StateSave { get; set; }
115125

116126
public string Language { get; set; }
117127

128+
public string DrawCallback { get; set; }
129+
118130
public string GetFilterType(string columnName, Type type)
119131
{
120132
foreach (Func<string, Type, string> filterTypeRule in FilterTypeRules)
@@ -246,6 +258,7 @@ private static string convertColumnDefsToJson(IEnumerable<ColDef> columns)
246258
var nonSortableColumns = columns.Select((x, idx) => x.Sortable ? -1 : idx).Where( x => x > -1).ToArray();
247259
var nonVisibleColumns = columns.Select((x, idx) => x.Visible ? -1 : idx).Where(x => x > -1).ToArray();
248260
var nonSearchableColumns = columns.Select((x, idx) => x.Searchable ? -1 : idx).Where(x => x > -1).ToArray();
261+
var mRenderColumns = columns.Select((x, idx) => string.IsNullOrEmpty(x.MRenderFunction) ? new { x.MRenderFunction, Index = -1 } : new { x.MRenderFunction, Index = idx }).Where(x => x.Index > -1).ToArray();
249262

250263
var defs = new List<dynamic>();
251264

@@ -255,9 +268,24 @@ private static string convertColumnDefsToJson(IEnumerable<ColDef> columns)
255268
defs.Add(new { bVisible = false, aTargets = nonVisibleColumns });
256269
if (nonSearchableColumns.Any())
257270
defs.Add(new { bSearchable = false, aTargets = nonSearchableColumns });
271+
if (mRenderColumns.Any())
272+
foreach (var mRenderColumn in mRenderColumns)
273+
{
274+
defs.Add(new { mRender = "%" + mRenderColumn.MRenderFunction + "%", aTargets = new[] {mRenderColumn.Index} });
275+
}
276+
277+
if (defs.Count > 0)
278+
return new JavaScriptSerializer().Serialize(defs).Replace("\"%", "").Replace("%\"", "");
279+
280+
return "[]";
281+
}
282+
283+
private static string convertColumnSortingToJson(IEnumerable<ColDef> columns)
284+
{
285+
var sortList = columns.Select((c, idx) => c.SortDirection == SortDirection.None ? new dynamic[] { -1, "" } : (c.SortDirection == SortDirection.Ascending ? new dynamic[] { idx, "asc" } : new dynamic[] { idx, "desc" })).Where(x => x[0] > -1).ToArray();
258286

259-
if (defs.Count > 0)
260-
return new JavaScriptSerializer().Serialize(defs);
287+
if (sortList.Length > 0)
288+
return new JavaScriptSerializer().Serialize(sortList);
261289

262290
return "[]";
263291
}

Mvc.JQuery.Datatables/DataTablesHelper.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,9 @@ public static DataTableConfigVm DataTableVm<TController, TResult>(this HtmlHelpe
4747
Sortable = pi.Item2.Sortable,
4848
Visible = pi.Item2.Visible,
4949
Searchable = pi.Item2.Searchable,
50-
Type = pi.Item1.PropertyType
50+
Type = pi.Item1.PropertyType,
51+
SortDirection = pi.Item2.SortDirection,
52+
MRenderFunction = pi.Item2.MRenderFunction
5153
});
5254
}
5355
columns = columnList.ToArray();

Mvc.JQuery.Datatables/DataTablesTypeInfo.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,16 @@ public DataTablesAttribute()
5656
public bool Sortable { get; set; }
5757
public int? Order { get; set; }
5858
public string DisplayName { get; set; }
59+
public SortDirection SortDirection { get; set; }
60+
public string MRenderFunction { get; set; }
5961

6062
public bool Visible { get; set; }
6163
}
64+
65+
public enum SortDirection
66+
{
67+
None,
68+
Ascending,
69+
Descending
70+
}
6271
}

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,8 @@ The code here is based on code from http://code.google.com/p/datatables-asp-mvc/
77
If you have a feature request, bug, or a patch, please could you add an example page on a fork demonstrating the problem or feature. Thanks!
88

99
[![Flattr this git repo](http://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=mcintyre321&url=https://github.com/mcintyre321/mvc.jquery.datatables&title=Mvc.JQuery.DataTables&language=&tags=github&category=software)
10+
11+
Example output:
12+
13+
14+
![Example](http://snag.gy/FQFdn.jpg)

0 commit comments

Comments
 (0)