如何使用 onchange="函数(this.value)

how to use onchange="function(this.value)

我想通过 select 字段更改文章语言,所以我给了选项不同的值,现在我找不到如何编写函数。 在我有不同的按钮之前,这很容易。但现在我必须为七种语言做这件事,而且我没有足够的 space 用于按钮。希望有人能帮助我。非常感谢。

    <select id="langbtn" name="langbtn" onchange="language(this.value)">
                <option value="">language</option>
                <option value="de">deutsch</option>
                <option value="es">español</option>
                <option value="jp">日本人</option>
                <option value="pt">português</option>
                <option Value="ru">русский</option>
                <option value="cn">中国</option>
                <option value="en">english</option>
            </select>

    function language() {
        if($(this).attr("value") == "de"){
                $.get('article_de.html', function(data) {
                    $('#article_language').html(data);
                })
                $.get('newstext_de.html', function(data) {
                    $('#newstext_language').html(data);
                })
        }
    }

您可以将该值用作字符串并将其连接到 URL 中。

function language(lang) {
    if (!lang) return;
    $.get('article_' + lang + '.html', function(data) {
        $('#article_language').html(data);
    })
    $.get('newstext_' + lang + '.html', function(data) {
        $('#newstext_language').html(data);
    })
}

function language(lang) {
    if (!lang) return;
    $('#article_language').text('You have selected: ' + lang);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="langbtn" name="langbtn" onchange="language(this.value)">
                <option value="">language</option>
                <option value="de">deutsch</option>
                <option value="es">español</option>
                <option value="jp">日本人</option>
                <option value="pt">português</option>
                <option Value="ru">русский</option>
                <option value="cn">中国</option>
                <option value="en">english</option>
            </select>
<div id="article_language"></div>

可以用js代码监听变化

$('#langbtn').on("change",function(){
     if($(this).attr("value") == "de"){
                $.get('article_de.html', function(data) {
                    $('#article_language').html(data);
                })
                $.get('newstext_de.html', function(data) {
                    $('#newstext_language').html(data);
                })
        }
});

JsFiddle

您可以使用 Jquery 实现相同的效果,您可以注册 Select 列表的更改事件,然后检查所选项目的值,并根据它发出类似

的获取请求
 $(document).ready(function(){
$('#langbtn').on('change',function(){
    if($(this).val()=='')
        return;

    $.get('article_' + $(this).val() + '.html', function(data) {
        $('#article_language').html(data);
    });

    $.get('newstext_' + $(this).val() + '.html', function(data) {
        $('#newstext_language').html(data);
    });

});

});

请参考fiddle http://jsfiddle.net/4uk23djf/1/