У меня есть папка lang, которая содержит языковые переменные для веб-сайта. В зависимости от кнопки, нажатой пользователем, я хочу включить нужный файл. Поэтому, если пользователь выбирает английский язык, переменная session хранит lang = 'en'. Затем включите файл ./lang/en/client_vars.js, чтобы я мог вызвать эти переменные. Если пользователь выбирает китайский язык, «ch» хранится в сеансе, а файл для включения - ./lang/ch/client_vars.js. До сих пор это то, что я подумал:Безопасный способ включения файла javascript динамически
<script type="text/javascript" src="set_language.js"></script>
входит в головной части.внутри set_language.js файла, я получаю значение переменной сессии, как это:
var language; $.ajaxSetup({cache: false}) $.get('get_session.php', function (data) { language = data; });
Файл get_session был файл, в котором переменная языка сессия была объявлена и установить.
Третий шаг - включить желаемый файл js. Вот где я застрял. В нормальной ситуации, если существует только один возможный файл, я бы сделал это в головной части, как
<script type="text/javascript" src="./lang/en/client_vars.js"></script>
Но так как мне нужно, чтобы получить эту переменную с помощью AJAX-первых, я не знаю, как с этим бороться.
Было бы еще лучше, если начальная '$ .get()' можно было бы сделать, чтобы вернуть фактический сценарий. – Pointy
Я попробую. Однако я был бы признателен за некоторую обеспокоенность по поводу безопасности используемого метода. В других потоках я читал, как иногда некоторые методы приводят к тому, что код подвержен ошибкам ... –
@Pointy Я не знаю об этом, я хотел бы услышать ваше предложение, так как любые улучшения приветствуются. –