/** * Escrito por DGmike * http://dgmike.com.br/cidades-estados-js */ /* Dom Ready */ window.onDomReady = function dgDomReady(fn){ if(document.addEventListener) //W3C document.addEventListener("DOMContentLoaded", fn, false); else //IE document.onreadystatechange = function(){dgReadyState(fn);} } function dgReadyState(fn){ //dom is ready for interaction (IE) if(document.readyState == "interactive") fn(); } /* Objeto */ dgCidadesEstados = function(cidade,estado,init) { this.set(cidade,estado); if (init) this.start(); } dgCidadesEstados.prototype = { estado: document.createElement('select'), cidade: document.createElement('select'), set: function(estado, cidade) { this.estado=estado; this.estado.dgCidadesEstados=this this.cidade=cidade; this.estado.onchange=function(){this.dgCidadesEstados.run()}; }, run: function () { var sel = this.estado.options.selectedIndex; var itens = this.cidades[sel]; var itens_total = itens.length; var opts = this.cidade; while (opts.childNodes.length) opts.removeChild(opts.firstChild); this.addOption(opts, '', 'Selecione uma cidade'); for (var i=0;i