Google Map API下拉列表Onchange事件侦听器

时间:2015-12-11 14:05:40

标签: javascript jquery google-maps

我有一个谷歌地图,我想在动态下拉菜单中选择值时触发一个功能。为此,我添加了一个监听器,并提交了如下表格。

var input = document.createElement('input');
input.setAttribute('type', 'text');
input.setAttribute('id', 'pac-input');
input.setAttribute('class', 'controls');
input.setAttribute('placeholder', 'Search By Area');

input.addEventListener("change", function(event) {
    checkInputKey_map(event, $(this));
});

checkInputKey我正在向控制器发送带有所选值的ajax,但是在post请求中,参数go不是所选的全名。相反,它是为获取地点而编写的关键字。虽然我想要发送完整的搜索名称。任何帮助将不胜感激

更新

function checkInputKey_map(event,this) {
    if ((event.keyCode == 13 || event.type == 'change') && $("#API_source_map").val() == 'yelp_places') {
        searched_place = $('#pac-input').val();
        console.log(searched_place);
    }
}

1 个答案:

答案 0 :(得分:0)

总是回答你自己的问题感觉很好但很烦人。但所有事情都是分开的我做了一个技巧,我将相同的监听器应用于输入,但延迟了一秒钟。我的最终代码如下所示

var input = document.createElement('input');
input.setAttribute('type','text');
input.setAttribute('id','pac-input');
input.setAttribute('class','controls');
input.setAttribute('placeholder','Search By Area');

input.addEventListener("change", function(event){
setTimeout(function() {
    checkInputKey_map(event, $(this));
},1000);
});