2015-07-07 11 views
6

Utilizzo i dati da datatables.net all'interno di un'applicazione multilingue. So come cambiare la lingua della tabella semplicemente passando il file della lingua o personalizzando le stringhe da solo.Lingua dei commutatori di dati CDN

"language": { 
      "url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/lang.json" 
     } 

Ma esiste la possibilità di cambiare la lingua in base all'ambiente informatico dell'utente del browser?

risposta

8

Unfortunetaly, il langauge packages sono chiamati con nomi di lingue, non da codici linguistici:

//cdn.datatables.net/plug-ins/1.10.7/i18n/Finnish.json
// cdn.datatables.net/plug-ins/1.10.7/i18n/French.json

ecc Quindi è necessario costruire una mappa che traduce i codici di lingua per nomi delle lingue:

var langMap = { 
    'en' : 'English', 
    'da' : 'Danish', 
    'se' : 'Swedish' 
    //etc, the languages you want to support 
} 

Ora è possibile passare l'URL corretto pacchetto linguistico per DataTable che corrisponde alla lingua del browser corrente:

function getLanguage() { 
    var lang = navigator.language || navigator.userLanguage; 
    return '//cdn.datatables.net/plug-ins/1.10.7/i18n/'+langMap[lang]+'.json' 
} 

var table = $('#example').DataTable({ 
    language : { 
     url: getLanguage() 
    } 
}); 

demo ->http://jsfiddle.net/3er6f4w6/

+2

Grazie. Così ovvio, ora lo hai detto, perché non l'ho capito. Stavo solo cercando una funzionalità integrata. – greenhoorn