TypeError javascript变量未定义

时间:2014-02-27 05:59:30

标签: ruby-on-rails extjs

在我的ror应用程序(ruby on rails)上,其中一个google.js.erb函数显示谷歌地图,我添加添加位置功能,我使用extjs框架,但是我遇到了一些更强的问题,相对代码在下面

Ext.onReady(function () {
var mapOptions = 
{         
    zoom: 6,     
    center: new google.maps.LatLng(30.26, 120.19),    
    mapTypeId: google.maps.MapTypeId.ROADMAP,    
    scaleControl: true,      
    mapTypeControl: true       
};   
var map = new google.maps.Map(Ext.getDom('mapDiv'), mapOptions);
var googlemappanel=Ext.create('Ext.panel.Panel', {
items: [
{
    xtype: 'panel',
    region: 'east',
    items: [ 
        Ext.create('Ext.form.Panel', { 
            id: 'zone-form', 
            items: [ 
            {xtype:"textfield",fieldLabel: '<%= t('code') %>',name: "code", id: 'zoneid'}
            ],
            buttons: [{
                handler: function(){
                    Ext.getCmp('zone-form').getForm().submit({   
                        url : 'basestation_edit', 
                        success : function(form, action){
                        var base=action.result.griddata
                        for(var i=0; i<action.result.griddata.length; i++){
                            marker = new google.maps.Marker({
                            position: new google.maps.LatLng(base[i].latitude,base[i].longitude),
                            map: map
                       });
                       google.maps.event.addListener(marker, "click", function(event) {
                       Ext.getCmp('zoneid').setValue(base[i].id);
                   })
                   }
               } 
               ....      

当我提交表单时,谷歌标记会添加到地图中。然而,当我点击标记时,firebug抛出TypeError:base [i]是未定义的错误,google marker添加正常,似乎变量i是恢复,设置全局我没有解决问题。 任何帮助!

0 个答案:

没有答案