我被尝试了语言更改复选框。如果我选择泰米尔语的含义,则重新加载页面,则应用泰米尔语标签。但是选择"盒子值"重新加载默认选项英语。如何更改语言明智的选择框值选择
html代码
<select id="Language" name="Language" class="bootstrap-select buttonstyle">
<option value="English">English</option>
<option value="Tamil">தமிழ்</option>
<option value="Malayalam">മലയാളം</option>
</select>
jQuery代码
$('#Language').on('change', function () {
var value = $(this).val();
$.ajax({
url: 'php/language.php',
data: {val:value},
type: 'POST',
success:function (data) {
document.location.reload();
LangLoad(data);
}
});
});
function LangLoad(value) {
$('#Language').val(value);
}
如何解决此问题....
解决方案,因为没有正确的方法。
考虑使用localStorage
存储选定的language
$('#Language').on('change', function () {
var value = $(this).val();
$.ajax({
url: 'php/language.php',
data: {val:value},
type: 'POST',
success:function (data) {
LangLoad(data); //call this before reloading document
document.location.reload();
}
});
});
function LangLoad(value) {
localStorage.setItem('language', value);//storing to localStorage
//$('#Language').val(value); //no need here
}
从localStorage
language
值 $(document).ready(function(){
var language = localStorage.getItem('language');
if(language) {
$('#Language').val(language);
}
});
也依靠从服务器接收到的数据更为相关。我假设您的服务器语言php
javascript
$('#Language').on('change', function () {
$('form').submit();
});
html&amp;php视图
<form action="php/language.php" method="POST">
<select id="Language" name="Language" class="bootstrap-select buttonstyle">
<?php $html = '';
foreach ($options as $option => $value) {
if ($value === $selectedValue) {
$html .= '<option value='.$value.' selected="selected">'.$option.'</option>';
} else {
$html .= '<option value='.$value.'>'.$option.'</option>';
}
}?>
<?php echo $html; ?>
</select>
</form>