1 回答

TA貢獻(xiàn)2065條經(jīng)驗 獲得超14個贊
在您的 HTML 中,每次更改選擇時都會提交您的表單。表單的提交意味著整個頁面都會刷新,所以即使你改變了google map語言,頁面刷新后它也會丟失。(除非您先將其存儲在某個地方)。
有幾種方法可以解決這個問題:
您應(yīng)該讓頁面刷新并通過 Django 在 head 腳本中設(shè)置全局值,并使用它來設(shè)置 Google 地圖的語言。
IE
<script>
var lang = {% currentLang %}
</script>
將 lang 設(shè)置為本地存儲(或 cookie)后提交表單。然后當(dāng)頁面刷新時,lang從本地存儲中獲取并將其傳遞給谷歌地圖。注意下面是一些偽代碼,需要驗證表單是否仍在該函數(shù)中提交。
IE
<script>
function onSelectChange() {
var elem = document.getElementById('sel_id');
var langValue = elem.options[elem.selectedIndex].value;
localStorage.setItem('lang', langValue);
this.form.submit();
}
</script>
<select onchange="onSelectChange">...
使用鍵從本地存儲中獲取值
<script>
var lang = localStorage.getItem('lang');
</script>
添加回答
舉報