使用选择选项更改语言(URL)

时间:2017-01-19 16:32:49

标签: javascript php laravel

我正在使用此程序包 - https://github.com/mcamara/laravel-localization进行本地化。当我手动将URL更改为/ en,/ de等时,它工作正常......但是当选择(html)选项时,是否可以更改URL。例如,我想将其添加到导航栏:

<form action = "somePage" method = "POST">
    <select>
        <option value = "en">English</option>
        <option value = "de">Deutsch</option>
                       ...
    </select>
</form>

Laravel中是否有选项可以添加&#34;值&#34;到字符串?

修改

使用此代码,它会更改URL,但我只想替换/ de和/ en。例如,它将http://localhost:8000/en/home更改为http://localhost:8000/en ...我希望它保持在同一页面上,只是为了更改语言。示例:http://localhost:8000/en/profilehttp://localhost/de/profile

<select onchange="this.options[this.selectedIndex].value && (window.location = this.options[this.selectedIndex].value);">
<option value="">Select...</option>
<option value={{ url('/en') }}>English</option>
<option value="{{ url('/de') }}">Deutsch</option>

2 个答案:

答案 0 :(得分:1)

做这样的事情。

<form id="selectbox" name="" onchange="javascript:location.href = this.value;">
    <select>
        <option value={{ url('/de') }}>Deutsch</option>
        <option value={{ url('/en') }}>English</option>
    </select>
</form>

我提到thisthis张贴我的回答。

答案 1 :(得分:0)

现在有效。大家好......

<script type="text/javascript">
    $('#changeLang').change(function (e) {
        var locAppend = $(this).find('option:selected').val(),
            locSnip = window.location.href.split('/')[4];
        console.log(window.location.href = locAppend + "/" + locSnip)
        //window.location.href = locAppend + locSnip;
    });
</script>