Ir para conteúdo
Fórum Script Brasil
  • 0

Não é possível mover o foco para o controle porque este é invisível


Martinsrj

Pergunta

Olá pessoal, boa noite!

Possuo um formulario onde o usuario utiliza o enter para navegar entre os campos. Em certo campo do formulario eu verifico se determinado campo foi preenchido com o codigo 03 e caso positivo um determindado campo dinamicamente eu coloco disable, porem se o usuario quiser corrigir o campo que foi preenchido com com o codigo 03 e mude para outro codigo aparece a seguinte mensagem de erro:

Detalhes dos erros da página da Web

Agente de Usuário: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.5; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322; OfficeLiveConnector.1.4; OfficeLivePatch.1.3; yie8)

Carimbo de data/hora: Mon, 6 Sep 2010 01:01:58 UTC

Mensagem: Não é possível mover o foco para o controle porque este é invisível, não habilitado ou de um tipo que não aceita foco.

Linha: 420

Caractere: 307

Código: 0

URI: http://www.dominio.c...peracao=incluir

Código de java script abaixo:

response.write "<script>" 
          response.write "function EnterFocaProximo(obj, e) {  "
          response.write "    if (e.keyCode == 13) {"
          response.write "        var i = 0;"
          response.write "        while (i < obj.form.length)"
          response.write "            if (obj.form[i++] == obj)"
          response.write "                break;"
            'response.write "                alert(i);"
          'response.write "         while ((obj.form[i % obj.form.length].type == 'hidden' || obj.form[i % obj.form.length].name.substr(0,4) == 'Ex1_') && (i < obj.form.length) )"
          response.write "         while ((obj.form[i % obj.form.length].type == 'hidden' || obj.form[i % obj.form.length].name.substr(0,4) == 'Ex1_') && (i < obj.form.length) )"
          response.write "             i++;"
          response.write "        obj.form[i % obj.form.length].focus();"
          'response.write "                alert(i);"
          'Response.Write " (document.getElementById('campo').disabled==true);"
          
          'response.write "              if (obj.form[i % obj.form.length].focus().disabled==true)"
          'response.write "                { "
          'response.write "                    alert('Inativo'); "
            'response.write "                } "
                    
          response.write "        e.keyCode = 0;"
          response.write "    }"
          response.write "}"
         response.write "</script>"

Como que eu posso mover focus para o campo que não esteja desabilitado.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Consegui resolver a situação, agora o código está dessa forma:

function EnterFocaProximo(obj, e) {      
if (e.keyCode == 13) {        
    var i = 0;        
    while (i < obj.form.length)    
        if (obj.form[i++] == obj)
        break;         
    while ((obj.form[i % obj.form.length].type == 'hidden' || obj.form[i % obj.form.length]disabled==true) || obj.form[i % obj.form.length].name.substr(0,4) == 'Ex1_') && (i < obj.form.length) )             
        i++;        
        obj.form[i % obj.form.length].focus();        
        e.keyCode = 0;    
    }
}
Mas aparece a seguinte mensagem de erro: ')' esperado emp27_cadastro2.asp linha 438 A linha 438 é tudo isso:
function EnterFocaProximo(obj, e) {      
if (e.keyCode == 13) {        
    var i = 0;        
    while (i < obj.form.length)    
        if (obj.form[i++] == obj)
        break;         
    while ((obj.form[i % obj.form.length].type == 'hidden' || obj.form[i % obj.form.length]disabled==true) || obj.form[i % obj.form.length].name.substr(0,4) == 'Ex1_') && (i < obj.form.length) )             
        i++;        
        obj.form[i % obj.form.length].focus();        
        e.keyCode = 0;    
    }
}
</script>
<br><INPUT NAME='gpChave' TYPE=hidden VALUE=''></INPUT><INPUT NAME='operacao' TYPE=hidden VALUE='incluir'></INPUT><table cellspacing=0 cellpadding=0 border=0 class=TabelaEntrada><tr><td class=titulocampo></td><td class=titulocampo ><INPUT NAME='codprocesso' TYPE=hidden VALUE=''></INPUT></td></tr><tr><td>&nbsp;</td><td></td></tr><tr><td colspan=2><font face=verdana size=2>&nbsp;»» <b>Dados do Proprietário<p></td></td></tr><tr><td class=titulocampo valign=top nowrap>CPF/CNPJ:</td><td class=titulocampo  valign=top><INPUT NAME='CPF_CGC' ID='CPF_CGC' TYPE=text  VALUE='087.681.047/40' SIZE=18 MaxLength=18 class=CampoNormal OnKeyPress='EnterFocaProximo(this,event);' onFocus="this.select(); "

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...