2. Create 2 text files jquery.dataTables.en-US.txt, jquery.dataTables.zh-CN.txt
3. Go to the url http://datatables.net/plug-ins/i18n
Get the language text and paste it in the relative files.
4. In the masterpage we need to have a hidden control.
- <input type="hidden" id="hdnLang" runat="server">
- hdnLang.Value = SessionProxy.Search.Language.ToLower();
- var locale = ($('#ctl00_hdnLang').val() || "en-us");
- var langFile = "../Scripts/jquery.dataTables.en-US.txt";
- if (locale === "zh-cn") {
- langFile = "../Scripts/jquery.dataTables.zh-CN.txt";
- }
- var oTable = $('.gvDataTable').dataTable({
- "oLanguage": {
- "sUrl": langFile
- },
- "sScrollX": "99%",
- "bStateSave": true, //http://datatables.net/forums/discussion/573/how-to-stay-on-current-page-after-re-draw/p1
- "fnDrawCallback": function (oSettings) {/*Re-Create serial no for the table*/
- /* Need to redo the counters if filtered or sorted */
- if (oSettings.bSorted || oSettings.bFiltered) {
- for (var i = 0, iLen = oSettings.aiDisplay.length; i < iLen; i++) {
- $('td:eq(0)', oSettings.aoData[oSettings.aiDisplay[i]].nTr).html(i + 1);
- }
- }
- /*Put checkboxlist after filter to show/hide columns after excel export*/
- $('.cbShowOrHideGvCols').appendTo('div.DTTT_container');
- },
- /*"sDom": 'r<"H"lf><"datatable-scroll"t><"F"ip>',*/
- "sDom": '<"H"lTfr><"datatable-scroll"t><"F"ip>',
- "oTableTools": {
- "sSwfPath": "../Scripts/media/swf/copy_csv_xls_pdf.swf",
- /*"sSwfPath": "http://datatables.net/release-datatables/extras/TableTools/media/swf/copy_csv_xls_pdf.swf",*/
- "aButtons": [{ /*http://datatables.net/extras/tabletools/button_options*/
- "sExtends": "xls",
- "sFileName": "xlsFileName.xls",
- "sButtonText": "<img alt="" height="15" src="../images/excel.gif" width="10">",
- "sTitle": "Title of the file"
- /*"fnInit": function (node) { formatTableToolsButton(node, 'DTTT_button_xls'); }*/
- }
- /*, {
- "sExtends": "pdf",
- //"sButtonText": "<img alt="" height="15" src="../images/pfp.jpg" style="border:none;" width="10">",
- "sFileName": "PdfFileName.pdf",
- "sTitle": "Title of the file"
- }*/
- ]
- }
- });
- /*When we edit the gridview, header and row are zigzag.
- Call this to overcome it
- */
- setTimeout(function () {
- oTable.fnAdjustColumnSizing();
- }, 50);
- /*after page load call this event, if there is a postback*/
- if ($('.gvShowOrHideGvCols tr').length <= 0) $(".cbShowOrHideGvCols").css("display", "none");
- $(".cbShowOrHideGvCols input[type=checkbox]").each(function () {
- ToggleGridViewCol('.gvShowOrHideGvCols', this, '');
- });
- /*when the checkbox checked changed*/
- $(".cbShowOrHideGvCols input[type=checkbox]").change(function () {
- ToggleGridViewCol('.gvShowOrHideGvCols', this, '');
- });
- /*Remarks: if we want to show or hide gridview columns
- grid: GridView.ClientID
- ctrl: CheckBoxList control(if we are using foreach)
- colIndex: gridview column index we need to show/hide
- someValue: this the attribute added to the checkbox, which holds the checkbox value
- */
- function ToggleGridViewCol(grid, ctrl, colIndex) {
- var col = (colIndex === '') ?
- $(ctrl).parent().attr('someValue') : colIndex;
- if (col != '') {
- var show = $(ctrl).is(":checked");
- if ($(grid + " tr").length <= 0) return true; //check gridview loaded/empty
- var oTable = $(grid).dataTable();
- var bVis = oTable.fnSettings().aoColumns[col].bVisible;
- if (show && !bVis)
- oTable.fnSetColumnVis(col, true);
- else if (!show && bVis)
- oTable.fnSetColumnVis(col, false);
- }
- }
No comments:
Post a Comment