Jump to content

Duvida Select's dependentes


FeoS
 Share

Recommended Posts

Quero fazer tipo 3 selects para um form, distrito, concelho, localidade.

Não sei onde hei de ir buscar todos os distritos do país, todos os concelhos e todas as localidades e depois queria fazer, por exemplo, meter o distrito de Leiria e aparecer só os concelhos de Leiria depois meter só Nazaré e aparecer só as localidades da Nazaré.

Alguém me diz onde posso ir buscar todos os distritos, concelhos e localidades do país??

Como posso fazer para depois meter isto a funcionar correctamente??

Obrigado desde já.

Link to comment
Share on other sites

Aqui tens Distritos, Concelhos e Freguesias http://www.freguesiasdeportugal.com/

Com Jquery... tens um exemplo aqui http://snipplr.com/view/26338/cascading-select-boxes/

Neste exemplo, o javascript insere as "option" filhas através do valor que está no atributo class.

Por exemplo se o select "pai" tiver valor 1, o jquery vai colocar como options no select "filho" todos os options com class="sub_1", e assim sucessivamente... em cascata.

Outra forma com ajax... crias 3 selects, para o 1º e 2º colocas no evento onchange uma função para carregar no select filho as options, através de ajax... uma coisa destas...

$(document).ready(function() {
    $('#selectDistritos').change(function() {
        $('#selectConcelhos').load('carregarConcelhos.php', { 'distrito': $('#selectDistrito').value }); 
    });
    $('#selectCocelhos').change(function() {
        $('#selectFreguesias').load('carregarFreguesias.php', { 'concelho': $('#selectConcelho').value }); 
    });
});
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.