Ir para conteúdo

Arquivado

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

Carcleo

Como eu consgo fazer isso funcionar?

Recommended Posts

Pessoal.

Como eu consgo fazer isso funcionar?

<script>document.getElementById('oportunidade_alt_imoveis').checked==true;</script>
<form action="?acao=id" method="post">
 <input type="checkbox" id="oportunidade_alt_imoveis" />
</form>

Da o seguinte erro:

SCRIPT5007: Não é possível obter valor da propriedade 'checked': o objeto é nulo ou não definido 
inicio.php, linha 53 Caractere 30

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está executando o script antes do elemento existir.

Mova seu bloco de script para o final do arquivo, ou coloque o código pertinente dentro do evento onload.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal.

Como eu consgo fazer isso funcionar?

<script>document.getElementById('oportunidade_alt_imoveis').checked==true;</script>
<form action="?acao=id" method="post">
 <input type="checkbox" id="oportunidade_alt_imoveis" />
</form>

Da o seguinte erro:

SCRIPT5007: Não é possível obter valor da propriedade 'checked': o objeto é nulo ou não definido 
inicio.php, linha 53 Caractere 30

 

Veja, não é melhor usar atributo "checked" no checkbox ?

 

Em todo caso existem outras formas:

 

<script>
function checked(){
document.getElementById('oportunidade_alt_imoveis').checked=true;
}
</script>

 

Use a função acima no onload da tag body ou:

 

<script>
function checked(){
document.getElementById('oportunidade_alt_imoveis').checked=true;
}
document.body.onload = checked();
</script>

 

Você pode usar também addEventListener no lugar "onload", mas tem que fazer verificação para IE8.

 

Editei, nem vi os "==" deve ser um só. Como disse o rodrigopa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não esta dando certo.

 

Detodo jeito ele diz que o objeto é nulo e não existe.

 

Não sei mais o que fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É só colocar o script embaixo do form.

 

Assim:

<form action="?acao=id" method="post">
 <input type="checkbox" id="oportunidade_alt_imoveis" />
</form>
<script>document.getElementById('oportunidade_alt_imoveis').checked=true;</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deixa eu explicar melhor.

 

Talves assim voce possa me dar ua orientação mais específica.

 

Tenho uma consulta ao banco que me retorna um valor para o campo documento cliente.

 

Faço um if no php: Se o tamanho do campo for 11, é cpf. Daí preciso marcar o radio button para cpf, alterar o conteudo de um label para cpf e colocar mascara de cpf no campo editavel para que, se o cara quiser alterar o campo, a masacara esteje lá.

 

Da mesma forma se for CNPJ.

 

Então, n~çao possa colocar o script depois.

 

Segue o codigo:

........
if(strlen($dcto_clientes)==11)
{
    $cpf_checked="checked='checked'";
    $dcto_clientes= formata_cpf($dcto_clientes);
    echo "
    <script type=\"text/javascript\">
      document.getElementById(\"dcto_alt_clientes\").maxLength=11;
      document.getElementById(\"label_dcto_alt_clientes\").innerHTML=\"CPF :\";			 
      document.getElementById(\"dcto_alt_clientes\").onkeypress = function() 
      { return mascara(event,this,'###.###.###-##') };			   			 
    </script>";
}
elseif(strlen($dcto_clientes)==14)
{
    $cnpj_checked="checked='checked'";
    $dcto_clientes= formata_cnpj($dcto_clientes);
    echo "
    <script type=\"text/javascript\">
      document.getElementById(\"dcto_alt_clientes\").maxLength=14;
      document.getElementById(\"label_dcto_alt_clientes\").innerHTML=\"CNPJ :\";			 
      document.getElementById(\"dcto_alt_clientes\").onkeypress = function() 
      {return mascara(event,this,'##.###.###/####-##') };			   	         
    </script>";
}

?>
<h1><br />Alteração de Clientes</h1><h1><br /></h1>
<form action="?acao=altera" method="post" name="altera_cliente" id="altera_cliente">     
 <input type="hidden" name="id_clientes" id="id_clientes" value="<?php echo $id_clientes; ?>" />
 <label id="label_pessoa_fisica" for="pessoa_fisica">Pessoa Física</label>
 <input type="radio" name="pessoa" id="pessoa_fisica" onclick="javascript: seleciona_pessoa('cpf','alt');" <?php echo $cpf_checked; ?> />
      
 <label id="label_pessoa_juridica" for="pessoa_juridica">Pessoa Juridica</label> 
 <input type="radio" name="pessoa" id="pessoa_juridica"  onclick="javascript: seleciona_pessoa('cnpj','alt');" <?php echo $cnpj_checked; ?> /> <br />

 <label id="label_dcto_alt_clientes"  for="dcto_alt_clientes"></label>  
 <input type="text" name="dcto_alt_clientes" id="dcto_alt_clientes" value="<?php echo $dcto_clientes; ?>" size=40 maxlength=18><br />
........

Vê se aparece alguma ideia fazendo favor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, então usa a dica do Everton, usa o onload().

Faça assim:

 

<script>
window.onload = function() {
document.getElementById('oportunidade_alt_imoveis').checked=true;
}
</script>
<form action="?acao=id" method="post">
 <input type="checkbox" id="oportunidade_alt_imoveis" />
</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, tomei a seguinte decisão.

E gostaria de saber de vocês se esta semânticamamente correto.

Se é profissional fazer assim. E, se caso não for, como devo proceder.

Mas, desde já, gostaria de agradecer a todos que colaboraram.

 

verificação com php antes do form para chekagem do radio button

if(strlen($dcto_clientes)==11)
{
    $cpf_checked="checked='checked'";
    $dcto_clientes= formata_cpf($dcto_clientes);
}
elseif(strlen($dcto_clientes)==14)
{
    $cnpj_checked="checked='checked'";
    $dcto_clientes= formata_cnpj($dcto_clientes);
}
?>

 

E, aqui no meio, vai o form

 

verificação após o formulario com javascript

<script type="text/javascript">
if(document.getElementById("dcto_alt_clientes").value.length==14)
{
  document.getElementById("dcto_alt_clientes").maxLength=14;
  document.getElementById("label_dcto_alt_clientes").innerHTML="CPF :";			 
  document.getElementById("dcto_alt_clientes").onkeypress = function() { return mascara(event,this,'###.###.###-##') };	
}
else if(document.getElementById("dcto_alt_clientes").value.length==18)
{
  document.getElementById("dcto_alt_clientes").maxLength=18;
  document.getElementById("label_dcto_alt_clientes").innerHTML="CNPJ :";			 
  document.getElementById("dcto_alt_clientes").onkeypress = function() {return mascara(event,this,'##.###.###/####-##') };
}			   	         
</script>

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.