@@ -81,45 +81,47 @@ public static MvcHtmlString Render<T>(this GridBuilder<T> gridBuilder)
8181
8282 var tfootInit = string . Empty ;
8383
84- if ( ! String . IsNullOrEmpty ( gridBuilder . _FunctionAfterLoad ) && gridBuilder . _columnSearching == false )
85- {
86- tfootInit = "initComplete: function () {" ;
87- tfootInit += gridBuilder . _FunctionAfterLoad + "();" ;
88- tfootInit += "}," ;
89- } else if ( ! String . IsNullOrEmpty ( gridBuilder . _FunctionAfterLoad ) && gridBuilder . _columnSearching == true )
90- {
91- tfootInit = gridBuilder . _columnSearching ?
92- $@ "initComplete: function () {{
93- " + gridBuilder . _FunctionAfterLoad + $@ "
94- this.api().columns().every(function() {{
95- var that = this;
96- $('input', this.footer()).on('keyup change clear', function () {{
97- if (that.search() !== this.value) {{
98- that
99- .search(this.value)
100- .draw();
101- }}
102- }});
103- }});
104- }},"
105- : string . Empty ;
106- } else if ( String . IsNullOrEmpty ( gridBuilder . _FunctionAfterLoad ) && gridBuilder . _columnSearching == true )
107- {
108- tfootInit = gridBuilder . _columnSearching ?
109- $@ "initComplete: function () {{
110- this.api().columns().every(function() {{
111- var that = this;
112- $('input', this.footer()).on('keyup change clear', function () {{
113- if (that.search() !== this.value) {{
114- that
115- .search(this.value)
116- .draw();
117- }}
118- }});
119- }});
120- }},"
121- : string . Empty ;
122- }
84+ if ( ! String . IsNullOrEmpty ( gridBuilder . _callBack . InitComplete ) && gridBuilder . _columnSearching == false )
85+ {
86+ tfootInit = "initComplete: function (settings, json) {" ;
87+ tfootInit += gridBuilder . _callBack . InitComplete + "(settings, json);" ;
88+ tfootInit += "}," ;
89+ }
90+ else if ( ! String . IsNullOrEmpty ( gridBuilder . _callBack . InitComplete ) && gridBuilder . _columnSearching == true )
91+ {
92+ tfootInit = gridBuilder . _columnSearching ?
93+ $@ "initComplete: function () {{
94+ { gridBuilder . _callBack . InitComplete } (settings, json);
95+ this.api().columns().every(function() {{
96+ var that = this;
97+ $('input', this.footer()).on('keyup change clear', function () {{
98+ if (that.search() !== this.value) {{
99+ that
100+ .search(this.value)
101+ .draw();
102+ }}
103+ }});
104+ }});
105+ }},"
106+ : string . Empty ;
107+ }
108+ else if ( String . IsNullOrEmpty ( gridBuilder . _callBack . InitComplete ) && gridBuilder . _columnSearching == true )
109+ {
110+ tfootInit = gridBuilder . _columnSearching ?
111+ $@ "initComplete: function () {{
112+ this.api().columns().every(function() {{
113+ var that = this;
114+ $('input', this.footer()).on('keyup change clear', function () {{
115+ if (that.search() !== this.value) {{
116+ that
117+ .search(this.value)
118+ .draw();
119+ }}
120+ }});
121+ }});
122+ }},"
123+ : string . Empty ;
124+ }
123125
124126 var selectInit = gridBuilder . _selectEnable ?
125127 $@ "select: {{
@@ -153,6 +155,7 @@ public static MvcHtmlString Render<T>(this GridBuilder<T> gridBuilder)
153155 { tfootInit }
154156 processing:{ gridBuilder . _processing . ToLowString ( ) } ,
155157 scrollX:{ gridBuilder . _scrollX . ToLowString ( ) } ,
158+ stateSave:{ gridBuilder . _stateSave . ToLowString ( ) } ,
156159 serverSide:{ gridBuilder . _serverSide . ToLowString ( ) } ,
157160 { selectInit }
158161 fixedColumns: {{
@@ -164,6 +167,19 @@ public static MvcHtmlString Render<T>(this GridBuilder<T> gridBuilder)
164167 searching: { gridBuilder . _searching . ToLowString ( ) } ,
165168 paging: { gridBuilder . _paging . ToLowString ( ) } ,
166169 { lengthMenu }
170+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . CreatedRow ) ? $ "createdRow: function (row, data, dataIndex, cells) {{ { gridBuilder . _callBack . CreatedRow } (row, data, dataIndex, cells); }}," : string . Empty ) }
171+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . DrawCallback ) ? $ "drawCallback: function (settings) {{ { gridBuilder . _callBack . DrawCallback } (settings); }}," : string . Empty ) }
172+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . FooterCallback ) ? $ "footerCallback: function (tfoot, data, start, end, display) {{ { gridBuilder . _callBack . FooterCallback } (tfoot, data, start, end, display); }}," : string . Empty ) }
173+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . FormatNumber ) ? $ "formatNumber: function (toFormat) {{ { gridBuilder . _callBack . FormatNumber } (toFormat); }}," : string . Empty ) }
174+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . HeaderCallback ) ? $ "headerCallback: function (thead, data, start, end, display) {{ { gridBuilder . _callBack . HeaderCallback } (thead, data, start, end, display); }}," : string . Empty ) }
175+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . InfoCallback ) ? $ "infoCallback: function (settings, start, end, max, total, pre) {{ { gridBuilder . _callBack . InfoCallback } (settings, start, end, max, total, pre); }}," : string . Empty ) }
176+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . PreDrawCallback ) ? $ "preDrawCallback: function (settings) {{ { gridBuilder . _callBack . PreDrawCallback } (settings); }}," : string . Empty ) }
177+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . RowCallback ) ? $ "rowCallback: function (row, data, displayNum, displayIndex, dataIndex) {{ { gridBuilder . _callBack . RowCallback } (row, data, displayNum, displayIndex, dataIndex); }}," : string . Empty ) }
178+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . StateLoadCallback ) ? $ "stateLoadCallback: function (settings, callback) {{ { gridBuilder . _callBack . StateLoadCallback } (settings, callback); }}," : string . Empty ) }
179+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . StateLoadParams ) ? $ "stateLoadParams: function (settings, data) {{ { gridBuilder . _callBack . StateLoadParams } (settings, data); }}," : string . Empty ) }
180+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . StateLoaded ) ? $ "stateLoaded: function (settings, data) {{ { gridBuilder . _callBack . StateLoaded } (settings, data); }}," : string . Empty ) }
181+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . StateSaveCallback ) ? $ "stateSaveCallback: function (settings, data) {{ { gridBuilder . _callBack . StateSaveCallback } (settings, data); }}," : string . Empty ) }
182+ { ( ! string . IsNullOrEmpty ( gridBuilder . _callBack . StateSaveParams ) ? $ "stateSaveParams: function (settings, data) {{ { gridBuilder . _callBack . StateSaveParams } (settings, data); }}," : string . Empty ) }
167183 { ( ! gridBuilder . _pageLength . HasValue ? string . Empty : $ "pageLength: { gridBuilder . _pageLength . Value } ,") }
168184 language: {{
169185 'url': '{ gridBuilder . _langUrl } '
0 commit comments