在URL javascript/nodejs中更改语言代码 [英] Change language code within URL javascript/nodejs
问题描述
我有一个通用的头文件,其中包括具有多语言下拉列表的导航栏.
当我选择下拉语言时,翻译页面没有任何问题.
但是当我移到其他页面时,如果应该反映在第一页上选择的语言(例如,如果在第一页上选择了th
,则其他页面应该是/th
而不是'/en'
当前通用的头文件始终为/en
,当我选择下拉菜单时如何更新a href links
javascript
I have common header file includes navbar in which have multilanguage dropdown.
when i select dropdown language, translates page without any issues.
But when i move to other pages, if should reflect the language selected on first page (eg) if th
is selected on first page, other page should be /th
instead of '/en'
currently common header file is always /en
, when i chose dropdown how i update a href links
javascript
从下拉列表中选择特定语言后,需要更新所有href链接.
need to update all href links when particular language is selected from dropdown.
//header.ejs
<body>
<nav>
<ul>
<li class="nav-item">
<a class="nav-link" href="/en/about" style="margin-right: 1.5rem!important;">about us</a>//change this link
</li>
<li class=" nav-item">
<a class="nav-link" href="/en/contact"
style="margin-right: 1.5rem!important;">contact us</a>
</li>//change this link
</ul>
<div class="dropdown">
<button id="language" class="btn btn-warning dropdown-toggle" type="button" id="dropdownMenu2"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" onclick="clickButton()">
English
</button>
<div id="languagelist" class="dropdown-menu" aria-labelledby="dropdownMenu2" onclick="clickItem(); return false">
<a class="dropdown-item" href="javascript:" onclick="setLanguage('en')">English</a>
<a class="dropdown-item" href="javascript:" onclick="setLanguage('th')">Thai</a>
</div>
</div>
</nav>
</body>
推荐答案
- 在
setLanguage
通话中的cookie
中设置所选语言.
load
上查看cookie
中是否设置了语言.
- on
load
see if language is set or not incookie
. - set selected language in
cookie
onsetLanguage
call.
$(document).ready(function() {
//read previously set cookie value
var selectedLanguage = $.cookie( 'selectedLanguage' );
// 1. on load see if language is set or not in cookie.
selectedLanguage = selectedLanguage ? selectedLanguage : 'en';
setLanguage(selectedLanguage);
function setLanguage(lan){
$.cookie('selectedLanguage', lan);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js" integrity="sha256-1A78rJEdiWTzco6qdn3igTBv9VupN3Q1ozZNTR4WE/Y=" crossorigin="anonymous"></script>
这篇关于在URL javascript/nodejs中更改语言代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!