我正在做一个项目,我们很快就可以通过点击标志来更改文本的语言。如果我使用select,它可以完美地工作(翻译工作(。
功能代码
<select onchange="changeLanguage(this.value)" >
<option {{session()->has('lang_code')?(session()->get('lang_code')=='en'?'selected':''):''}} value="en">English</option>
<option {{session()->has('lang_code')?(session()->get('lang_code')=='fr'?'selected':''):''}} value="fr">French</option>
</select>
但我想用图像(英国国旗、西班牙国旗等(替换select中的选项,点击时它已经不起作用了。。我的语法一定不好。
非功能代码
<img onclick="changeLanguage(this.value)" src="{{ asset('images/flags/english.png') }}" alt="" {{session()->has('lang_code')?(session()->get('lang_code')=='en'?'selected':''):''}}>
<img onclick="changeLanguage(this.value)" src="{{ asset('images/flags/french.png') }}" alt="" {{session()->has('lang_code')?(session()->get('lang_code')=='en'?'selected':''):''}}>
编辑我更换
<script> function changeLanguage(lang){
window.location='{{url("change-language")}}/'+lang; }
</script>
使用
<img data-value="en" onclick="changeLanguage(this.value)" src="{{ asset('images/flags/french.png') }}" alt="" {{session()->has('lang_code')?(session()->get('lang_code')=='en'?'selected':''):''}}>
function changeLanguage(this.getAttribute('data-value')){ window.location='{{url("change-language")}}/'+lang; }
但是我有很多语法错误(,and;expected(有什么想法吗?非常感谢!
您可以在选项的子元素中使用img标记
<select onchange="changeLanguage(this.value)" >
<option {{session()->has('lang_code')?(session()->get('lang_code')=='en'?'selected':''):''}} value="en">
<img src="{{ asset('images/flags/english.png') }}" />
English
</option>
<option {{session()->has('lang_code')?(session()->get('lang_code')=='fr'?'selected':''):''}} value="fr">
<img src="{{ asset('images/flags/french.png') }}" />
French
</option>
</select>