getJSON不满意

I have 3 selects: country, region, city When choosing a country to be updated select the region on the country. here's the code. like written logically. but the region is not updated

$(document).ready(function() {

        $('select[name=ad_country]').change(function() {
            current_country = $(this).val();

            $.getJSON('./core/AJAX/advertisement_changecountry.php', {country: current_country}, 
                function(data) {
                    $('select[name=ad_region]').empty();

                    $.each(data.region, function(key, val) {
                        $('select[name=ad_region]').append('<option value="'+val.id_parent+'">'+val.name+'</option>');
                    });

                    $('select[name=ad_city]').empty();

                    $.each(data.city, function(key, val) {
                        $('select[name=ad_city]').append('<option value="'+val.id_parent+'">'+val.name+'</option>');
                    });
                });
            }
        );
}

you have an error on your clossing tags

You have missed the '}' at the end.Now try this Code :

$(document).ready(function () {

        $('select[name=ad_country]').change(function () {
            current_country = $(this).val();

            $.getJSON('./core/AJAX/advertisement_changecountry.php', { country: current_country },
            function (data) {
                $('select[name=ad_region]').empty();

                $.each(data.region, function (key, val) {
                    $('select[name=ad_region]').append('<option value="' + val.id_parent + '">' + val.name + '</option>');
                });

                $('select[name=ad_city]').empty();

                $.each(data.city, function (key, val) {
                    $('select[name=ad_city]').append('<option value="' + val.id_parent + '">' + val.name + '</option>');
                });
            });
        });
    });