在addListener中传递google事件数据
Passing google event data in addListener
我有一个可变数量的文本字段,我正在动态初始化谷歌地图自动完成。
问题是,每次触发place_changed事件时,我都需要确切地知道它是在哪个输入框上触发的。如何将这些数据传递给我的saveLocation函数?
当前,事件的评估结果为未定义。
initAutocomplete = function (element) {
autocomplete = new google.maps.places.Autocomplete(
/** @type {!HTMLInputElement} */(element), {});
autocomplete.addListener('place_changed', saveLocation);
},
saveLocation = function (event) {
console.log(event);
var place = autocomplete.getPlace();
},
可能的方法:
var initAutocomplete = function (element) {
var autocomplete = new google.maps.places.Autocomplete(element);
google.maps.event.addListener(autocomplete,
'place_changed',
function(){saveLocation.call(autocomplete,element)});
},
saveLocation = function (element) {
document.getElementsByTagName('code')[0]
.innerHTML=element.getAttribute('name');
var place = this.getPlace();
};
google.maps.event.addDomListener(window, 'load', function(){
var inputs=document.querySelectorAll('.pac');
for(var i=0;i<inputs.length;++i){
initAutocomplete(inputs.item(i));
}
});
<code></code><br/>
<input class="pac" name="field1">field1<br/>
<input class="pac" name="field2">field2<br/>
<input class="pac" name="field3">field3<br/>
<script src="https://maps.googleapis.com/maps/api/js?v=3&libraries=places"></script>
相关文章:
- 在Google Chrome扩展中添加事件侦听器
- Google图表HTML工具提示,其中包含javascript onclick事件
- 删除Google Calander API中的事件
- 如何使用Dojo引用Google Maps事件中的包含类
- 2个Analytics帐户中的Google Analytics事件触发器跟踪
- 使用完整日历在网站上获取并显示来自Google日历事件的附加图像
- 在 Google Plus Button 上跟踪 click() 事件
- Google 闭包编译器和音频事件
- 如何将waze事件标记添加到带有流量的google地图javascript API生成的地图
- API Google Maps Javascript在上下文菜单中调用事件侦听器
- Google Map KML层占位符点击事件返回ZERO_RESULTS
- Google事件侦听器:未捕获类型错误:无法读取属性'addEventListener'为null
- 如何使用Google Analytics添加自定义事件跟踪
- 在addListener中传递google事件数据
- 如何让Google Maps API v3监听dragend事件并在投递时填充表单字段
- 注册'单击'事件与google.maps.event.addlistener(自动完成,..)
- google将v3事件触发器映射到json创建的标记上
- 在Google Analytics和Google Tag Manager中添加此共享事件
- Google Analytics(分析)在淘汰赛中推送跟踪事件.js数据绑定
- 在动态AngularJS按钮上添加Google事件跟踪代码