单击图像更改语言无效



我正在做一个项目,我们很快就可以通过点击标志来更改文本的语言。如果我使用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>

最新更新