DataTable Custom Sorting On Column

Requirement: we want to filter out the rows which is with empty value("", or " ") when sorting, always leave the rows with empty value column to the bottom of the data table.


jQuery.fn.dataTableExt.oSort['customstring-asc'] = function(x,y) {
		var retVal;
		x = $.trim(x);
		y = $.trim(y);

		if (x==y) retVal= 0;
		else if (x == "" || x == " ") retVal= 1;
		else if (y == "" || y == " ") retVal= -1;
		else if (x > y) retVal= 1;
		else retVal = -1;
		return retVal;
	};
	
	jQuery.fn.dataTableExt.oSort['customstring-desc'] = function(x,y) {
		var retVal;
		x = $.trim(x);
		y = $.trim(y);

		if (x==y) retVal= 0;
		else if (x == "" || x == " ") retVal= 1;
		else if (y == "" || y == " ") retVal= -1;
		else if (x > y) retVal= -1;
		else retVal = 1;
		return retVal;
	};
	
	/** Initiate Data Table * */
	oTable = $('#activityTable').dataTable({
		"oLanguage": {
			"sSearch" : "SEARCH FLOW:"
		},
		bJQueryUI : true,
		bLengthChange : false,
		bPaginate: false,
		bInfo : false,
		aoColumnDefs : [  {
			"sType" : "customstring",
			"aTargets" : [ 1 ]
		}
	});



Refer to https://datatables.net/examples/plug-ins/sorting_sType.html

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326907339&siteId=291194637