Reputation: 491
I was tried language change check box. if i choose Tamil means then reload page then Tamil label applied. but select box value reload the default option English. how to change language wise Select box values choose
HTML CODE
<select id="Language" name="Language" class="bootstrap-select buttonstyle">
<option value="English">English</option>
<option value="Tamil">தமிழ்</option>
<option value="Malayalam">മലയാളം</option>
</select>
Jquery Code
$('#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);
}
how to solve this....
Upvotes: 1
Views: 1709
Reputation: 5074
It'd be more relevant to rely on the data received from the server too. I assume your server language php
JAVASCRIPT
$('#Language').on('change', function () {
$('form').submit();
});
HTML & PHP view
<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>
Upvotes: 1
Reputation: 10282
A work around because didn't get your approach properly.
Consider using localStorage
to store selected 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
}
Getting language
value from localStorage
$(document).ready(function(){
var language = localStorage.getItem('language');
if(language) {
$('#Language').val(language);
}
});
Upvotes: 1