Tenho duas caixas selects, uma é alimentada com os meses do ano, e a outra com os dias do ano.
Ocorre que quando o usuário clica na caixa de meses, de acordo com o mês selecionado, a caixa de dias alimentada de 1 a até 31, se meses com 30 dias alimenta de 1 a 30, se meses com 31 dias alimenta com 31 dias, se mês de fevereiro alimenta de 1 a 28 ou 29 (aqui depende da funcao bisexto que faz a verificacao).
O problema é o seguinte:
Se voce escolhe inicialmente um mês que tem 30 dias, ela alimenta corretamente. Se depois voce escolhe um mês que tem 31 dias, ela alimenta com 31 dias corretamente.
Mas, agora, se voce voltar a escolher um mês que tem 30 dias, ela permanece alimentando com 31 dias. E mesmo que voce escolha o mês de fevereiro que tem 28 dias, ela continua alimentando com 31 dias.
Pelo o que percebo ela guarda sempre o ultimo numero maior que havia sido escolhido.
Já chequei a variável, a variável está retornando os valores corretamente.
Me lembro que quando programava em VB, tinha a opção clear que limpava todos os itens da caixa.
Será que o JavaScript guarda os valores anteriores nesta caixa? De repente ela alimenta até 28 dias, mas como já tinha guardado na memoria até 31 dias, ela mantém...
Bem, é uma loucura isto...O codigo que alimenta a caixa está abaixo:
function AlimentaSelects(){
alert("xDiasInicial" + QuantidadeDiasInicial);
alert("xDiasFinal" + QuantidadeDiasFinal);
for(var i = 0; i<=QuantidadeDiasInicial; i++){
document.form1.SelectDiaInicio.options = new Option(i);
}
for(var i = 0; i<=QuantidadeDiasFinal; i++){
document.form1.SelectDiaFinal.options = new Option(i);
}
}//fim da funcao AlimentaSelects
Notem que os dois alerts existentes no inicio da funcao, sempre estão me informando o valor da variavel QuantidadeDiasInicial e QuantidadeDiasFinal corretamente. Sempre mostra corretamente, 30, 31 ou 28 dias. Mesmo que ela tenha 30 ou 28 dias, a caixa é alimentada com 31 dias, se na vez anterior havia sido escolhido 31 dias...
Outra coisa que quero salientar, este programa estava funcionando corretamente até sexta-feira passada, existe alguma possibilidade de alguma configuracao do JS ter sido alterada (hackeada) para dar este problema?
Pergunta
Halfar
Tenho duas caixas selects, uma é alimentada com os meses do ano, e a outra com os dias do ano.
Ocorre que quando o usuário clica na caixa de meses, de acordo com o mês selecionado, a caixa de dias alimentada de 1 a até 31, se meses com 30 dias alimenta de 1 a 30, se meses com 31 dias alimenta com 31 dias, se mês de fevereiro alimenta de 1 a 28 ou 29 (aqui depende da funcao bisexto que faz a verificacao).
O problema é o seguinte:
Se voce escolhe inicialmente um mês que tem 30 dias, ela alimenta corretamente. Se depois voce escolhe um mês que tem 31 dias, ela alimenta com 31 dias corretamente.
Mas, agora, se voce voltar a escolher um mês que tem 30 dias, ela permanece alimentando com 31 dias. E mesmo que voce escolha o mês de fevereiro que tem 28 dias, ela continua alimentando com 31 dias.
Pelo o que percebo ela guarda sempre o ultimo numero maior que havia sido escolhido.
Já chequei a variável, a variável está retornando os valores corretamente.
Me lembro que quando programava em VB, tinha a opção clear que limpava todos os itens da caixa.
Será que o JavaScript guarda os valores anteriores nesta caixa? De repente ela alimenta até 28 dias, mas como já tinha guardado na memoria até 31 dias, ela mantém...
Bem, é uma loucura isto...O codigo que alimenta a caixa está abaixo:
Notem que os dois alerts existentes no inicio da funcao, sempre estão me informando o valor da variavel QuantidadeDiasInicial e QuantidadeDiasFinal corretamente. Sempre mostra corretamente, 30, 31 ou 28 dias. Mesmo que ela tenha 30 ou 28 dias, a caixa é alimentada com 31 dias, se na vez anterior havia sido escolhido 31 dias...
Outra coisa que quero salientar, este programa estava funcionando corretamente até sexta-feira passada, existe alguma possibilidade de alguma configuracao do JS ter sido alterada (hackeada) para dar este problema?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.