Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Creedence

Jogar parte de uma string dentro de getElementById

Recommended Posts

Boa tarde !

Ao clicar num campo radio, o evento onclick está chamando uma função de desativar outros botoes de radio.

Eu passo um parametro que carrega os ids desse botoes a desativar.

 

Ex: <input type='radio' name='idade' id='1' onClick="desabilita(135)>

 

A minha função recebe o parâmetro e deveria desabilitar os botoes de radio com id = 3 e tambem igual a 5.

Eu precisaria jogar o segundo e depois o terceiro elemento do parametro no disabled = true.

Estou tentando no formato abaixo mas algo está errado dentro do parenteses do getElementById .

 

Obrigado,

 

************************
function desabilita(id)
{
document.getElementById(id.substring(1,1)).disabled = true;
document.getElementById(id.substring(2,1)).disabled = true;
}
************************

Compartilhar este post


Link para o post
Compartilhar em outros sites

deve-se converter o parâmetro id da sua função para string

id.toString().substring(1,1)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hugo,

 

Eu conseguiria converter dentro do proprio getElementById ?
Tipo:

document.getElementById(id.toString().substring(1,1)).disabled = true;

 

Na verdade tentei e dá que document.getElementById é nulo ou não é um objeto.

 

Ou tenho que converter primeiro ?

 

Desde já agradeço seu apoio.

 

Marcos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, pode por direto.

 

o que ocorre é que dessa forma substring(1,1) retorna null

id.toString().substring(0, 1) // retorna 1
id.toString().substring(1, 2) // retorna 3
id.toString().substring(2, 3) // retorna 5

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hugo, funcionou perfeitamente.

Muito obrigado mesmo.

 

Na verdade preciso entender melhor a função substring pois pra mim, se eu tenho "123", substring(1,1) pegaria a partir do elemento 1 da matriz (que seria o 2) com tamanho 1. ou seja, seria "2". Se eu pegasse a partir do elemento 1 com tamanho 2 - substring(1,2) - seria "23".

 

Mas vou estudar melhor.

 

Valeu !!!

 

Marcos

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.