javascript - 触发下拉列表的点击事件

标签 javascript php jquery

我有 2 个下拉列表,第一个如下:

<select name="country_id" id="country_id" tabindex="1" onchange="changeLang(this);">

    {section name=jj loop=$jezyki}            

        <option value="{$jezyki[jj].code}" {if $LANG.lang == $jezyki[jj].code} selected {/if}>{$jezyki[jj].name}</option>

    {/section}  
</select>

第二个是从谷歌服务器下载的,它是一个谷歌翻译小部件。 我需要的是,当用户单击第一个下拉列表中的选项时,脚本应该更改小部件下拉列表的值并触发单击函数来实际翻译页面。

        function changeLang(someth){
                var nLang = someth.value;
                //$(".goog-te-combo option").val(someth.value);
              //  $(".goog-te-combo").trigger('click');    
        $(".goog-te-combo option[value="+nLang+"]").prop('selected',true).click();
            }

上面的代码片段改变了值。例如,我可以看到选择了英语,但仍然没有翻译页面

最佳答案

您需要调度 onchange 事件:

function changeLang(someth) {
    var nLang = someth.value,
        evt = document.createEvent("HTMLEvents");
    evt.initEvent("change", false, true);
    $('.goog-te-combo').val(nLang)[0].dispatchEvent(evt);
}

关于javascript - 触发下拉列表的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22403565/

相关文章:

javascript - Windows 边栏环境中的代码分析

php - 按日期在单独的表中显示 mySQL 数据(使用 PHP)

javascript - jQuery 显示和隐藏事件问题

javascript - 是否可以一次隐藏 Google 电子表格的多行?

javascript - Angular 隔离范围的 & 绑定(bind)返回 getter 函数而不是值

javascript - 是否可以仅由客户端删除 OPTIONS 请求?

php - MYSQL/PHP-从数据库中回显插入的数据

php - 到 iSeries 的 ODBC 连接给出奇数个结果

javascript - 使用 jQuery 创建具有多个类的 HTML 元素

chrome 6 的 jquery 边距问题