Manter option selecionada com de acordo com os dados do DB
Estou com uma dificuldade de manter selecionado um input da cidade via json,
funciona corretamente, só que depois que cadastro no banco os valores, sempre vai para primeira posição, gostaria de manter selecionado de acordo com o valor que esta no banco.
Só que não funciona!
Já tentei de varias maneiras
Veja:
$('select[name^="cidade_ibge"] option[value="250020"]').attr("selected","selected");
$('select[name="cidade_ibge"] option[value=<?php echo $valor; ?>]').attr("selected","selected");
Código
<script type="text/javascript">
CIDADE_PADRAO = 0;
$(document).ready(function (event) {
var loading_cidades = function() {
var pai = $('#id_cidade_ibge');
pai.find('option').remove();
}
var remover_loading_cidades = function() {
var pai = $('#id_cidade_ibge');
pai.find('option').remove();
pai.removeAttr('disabled');
}
var atualizar_cidades = function(cidades) {
remover_loading_cidades();
var pai = $('#id_cidade_ibge');
pai.find('option').remove();
$.each(cidades, function(i, e) {
if(CIDADE_PADRAO == e.id_ibge) {
pai.append(
$('<option>').attr({'value': 'e.id_ibge'}).html(e.nome).attr('selected', 'selected')
);
} else {
pai.append(
$('<option>').attr({'value': e.id_ibge}).html(e.nome)
);
}
});
}
$('#id_estado').change(function() {
var self = $(this);
var uf = self.val();
loading_cidades();
if (uf != '--') {
$.post('/admin/cidades/getCidadeId/' + uf + '.json', {}, function(data) {
if (data.estado == 'SUCESSO') {
atualizar_cidades(data.cidades, 0);
return false;
} else {
remover_loading_cidades();
}
}, 'json');
}
}).change();
$('#fomulario-endereco').submit(function(event) {
var nome_cidade = $('#id_cidade_ibge').find('option:selected').text();
$('#id_cidade').val(nome_cidade);
});
});
</script>
html
<select id="id_cidade_ibge" name="cidade_ibge">
</select>
<input id="id_cidade" name="cidade" type="hidden" />
parte do json
{"cidades":[{"id_ibge":"250010","nome":"\u00c1gua Branca"},{"id_ibge":"250020","nome":"Aguiar"}],"uf":"15","estado":"SUCESSO"}
Discussão (1)
Carregando comentários...