我想使用一个按钮来显示两种语言。当按钮值为英语时,内容将以其他语言显示,反之亦然。但页面重新加载后按钮值始终设置为英语。我正在使用 laravel 5.3
html代码:
<input type="button" name="locale" id="languageSwitcher" href="{!! url('lang') !!}" class="btn btn-round btn-primary" value="English">
JavaScript 代码:
$("#languageSwitcher").change(function () {
var locale = document.getElementById("languageSwitcher").value;
if (locale == "English") {
lang = "en";
document.getElementById("languageSwitcher").value = "Bangla"
}
else if (locale == "Bangla") {
lang = "bn";
document.getElementById("languageSwitcher").value = "English"
}
var _token = $("meta[name=_token]").val();
$.ajax({
url: "/language",
type: 'POST',
data: {locale: lang, _token: _token},
dataType: 'json',
success: function (data) {
},
error: function (data) {
},
beforeSend: function (data) {
},
complete: function (data) {
window.location.reload(true);
}
});
});
最佳答案
你的问题就在这里
<input type="button" name="locale" id="languageSwitcher" href="{!! url('lang') !!}" class="btn btn-round btn-primary" value="English">
您必须使用变量通过 Controller 传递值,或者寻找某种方法来控制 Controller 上的值,因为在每个页面上重新加载您的值总是会从 View 上静态的输入 html 标签值读取
关于javascript - 重新加载页面后重置按钮值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42343503/