Keresés

Új hozzászólás Aktív témák

  • papa019

    senior tag

    válasz Sk8erPeter #920 üzenetére

    Az index.php idetartozó része:

    ...<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=...key...&sensor=true&region=hu"></script>
    <script type="text/javascript" src="/js/location.js"></script>
    <script type="text/javascript" src="/js/place.js"></script>...

    Az oldalon van egy gomb, amire kattintva elindítom az adatok betöltését:

    $('#information_load').click(function(){
    load_data();
    });

    A place.js fileban vannak a függvények ehhez:

    function load_data(){
    var json_file_path = '/ajaxLoad.php';
    $.getJSON(json_file_path, function(data) {
    $('#get_informations').html("");
    var items = new Array();
    var item = new Array();

    $.each(data, function(key, val) {
    item = [];
    $.each(val, function (inner_index, inner_element) {
    item.push(inner_element);
    });
    items.push(item);
    });
    process_data(items);
    });
    }

    function process_data(items){
    var x;
    while ( x = items.pop())
    {
    var i = 5;
    var y = x[i];
    $('<ul/>', { // a kapott elem kiírása ellenõrzésképpen
    'class': 'my-new-list',
    html: y
    }).appendTo('#get_informations');

    var polygon = new google.maps.Polygon({
    paths: google.maps.geometry.encoding.decodePath(String(y)),
    strokeColor: "#daa520",
    strokeOpacity: 1,
    strokeWeight: 1,
    fillColor: "#daa520",
    fillOpacity: 0.4,
    editable: true
    });

    polygon.setMap(map);
    }
    }

    Erre a Chrome Developer Tools az alábbi hibát dobja:

    Uncaught TypeError: Cannot read property 'encoding' of undefined

    A Firebug pedig ezt:

    TypeError: google.maps.geometry is undefined
    [Break On This Error]

    google.maps.geometry.encoding.decodePath(String(k));

    A ugyanebben a js fájlban ez a mentés kódja:

    function dialog_box(add_place,points){
    $("#box_place").dialog({
    title: 'Új terület hozzáadása',
    width: 550,
    height: 620,
    modal: true,
    resizable: false,
    draggable: false,
    show: "slide",
    buttons: [
    {
    text: 'Mentés!',
    click: function(){
    var postData = $('#add_place_form').serializeArray();
    var additionalData = google.maps.geometry.encoding.encodePath(points);
    postData.push({name: "points", value: additionalData});
    $.post('ajaxPost.php', postData);
    $(this).dialog('close');
    end_polygon_draw();
    }
    },
    {
    text: 'Mégse!',
    click: function(){
    $(this).dialog('close');
    polygon_delete();
    }
    }
    ]
    });
    }

    Ez jól működik....

Új hozzászólás Aktív témák