Ir para conteúdo

POWERED BY:

Arquivado

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

Buxexa

Formulários

Recommended Posts

Olá, povão do fórum!Tenho algumas dúvidas a respeito de alguns efeitos de formulário, espero que alguém possa me ajudar:1) Eu criei um sistema de login, e eu gostaria de um código q qdo a pessoa entra na página, o campo já esteja selecionado com o cursor piscando, ql comando q eu utilizo pra fazer isso?2) Nesse mesmo sistema, tem uns links que os usuários não podem acessar sem eles estarem logados, portanto queria saber como faço pra quando ele clicar nesse link, o campo de login for selecionado e o cursor fica piscando, indicando que ele tem que escrever seu login?3) Outra coisa, como faço pra botar um contador de caracteres num textfield? Tipo, eu criei um text field q só pode ter 255 caracteres no banco de dados, logo eu queria botar um scriptizinho q aparecesse o número restante de caracteres que a pessoa pode digitar... Ex: Faltam 255 caracteres , dai ele digita 4 letras e aparece 251 caracteres, e por ai vai, indicando a ele quanto falta, ou o limite!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom todas as suas duvidas são de Java Script e não de Dreamweaver, a última solução para você ter uma ideia eu estarei postando um pedaço de uma matéria que eu escrevi para o cfbrasil.com.br.

 

Este código só funciona em páginas ColdFusion usando Flash Forms, estou postando para você ter uma idea doque deve fazer em JS.

 

Matéria

 

Contando caracteres digitados e limitando o campo textarea

 

Então vamos agora a outra brincadeira, digamos assim!!! Eu vejo sempre por ai, formulário que tem limitação de caracteres e tem um campinho abaixo contanto cada caracter que você digita, isso a maioria das vezes que vi era feito em JavaScript, então resolvi fazer isso com AS, vamos ver como ficou?

A primeira coisa que eu fiz, foi criar umas variáveis para definir e limitar a quantidade de caracteres que o textarea receberá.

 

var max = 50; //Aqui criei uma variável para armazenar o valor total de caracters e facilitar//a atualização, caso eu percise modificar a quantidade de caracteres futuramente.txtDesc.maxChars = max; //defino a quantidade maxima de caracters o valor atribuído a variável maxEm seguida eu dei um valor padrão para o campo que exibirá a quantidade de caracters que ainda falta para você digitar.txtLen.text = max; //defino o numero inicial do campo de contagem com a mesma variável
Depois eu testei se o textarea ainda está indefinido ou se já contem caracteres nele, caso já tenha eu começo a contabilizar no campo que exibirá a quantidade permitida de caracters através do atributo text.

 

if(txtDesc.text != 'undefined')			{						txtLen.text = max - txtDesc.length; //faço uma subtração entre a variável Max						//e a quantidade atual de caracters do campo txtDesc. Para isso usei o atributo						//length do textField			};
E para terminar eu resolvi avisar ao usuário quando ele atingiu o limite de caracteres com um alert. Para isso eu testei se a quantidade atual do campo textarea é igual ao valor máximo de caracteres permitidos.

 

if(txtDesc.length eq max)//compare se há igualdade entre a quantidade atual de caracters no //campo txtDesc e a variável max			{						alert('Você atingiu o limite maximo de caracteres','Atenção');			};
No formulário eu defino o atributo onload para carregar o código acima através do atributo variables da tag cfsavecontent e no campo textarea eu uso o atributo onchange para executar as funções acima.

 

<cfform name="form" onload="#len#" format="flash" height="300" width="300" method="post" skin="halosilver">			<cftextarea width="200" name="txtDesc" rows="10"  onchange="#len#" label="Texto:"></cftextarea>			<cfinput type="text" name="txtLen" label="Limite:" size="5" />			<cfinput type="button" name="bt" value="Enviar!" /></cfform>
Veja o codigo completo e o link para testar:

 

<cfsavecontent variable="len">//definimos a quantidade de caracteres maxima no textareavar max = 50;txtDesc.maxChars = max;//define o valor inicial do campo que faz a contagemtxtLen.text = max;//testamos se já foi inserido algum caracter no form e fazemos a contagemif(txtDesc.text != 'undefined'){txtLen.text = max - txtDesc.length;};//testamos se foi atingido a quantidade maxima de caracteres e criamos um alertif(txtDesc.length eq max){alert('Você atingiu o limite maximo de caracteres','Atenção');};</cfsavecontent><cfform name="form" onload="#len#" format="flash" height="300" width="300" method="post" skin="halosilver"><cftextarea width="200" name="txtDesc" rows="10" onchange="#len#" label="Texto:"></cftextarea><cfinput type="text" name="txtLen" label="Limite:" size="5" /><cfinput type="button" name="bt" value="Enviar!" /></cfform>
Veja o exemplo

 

 

E se quizer ler a matéria toda, clique aqui

 

Bom eu fiz em Action Script pois o mesmo tem interação total com ColdFusion que é a linguagem que eu mais utilizo, veja na seção de Java Script como fazer isso na tal linguagem.

 

T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Buxexa, tu por acaso tens um link ai do q você fez???Pra facilitar a ajuda do pessoal?Abraço! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Rapaz, axo que não é necessário...Imagina 3 links vazios na sua página, com <a href="#">, sao assim que estão os links, pois a pessoa ainda não pode acessar esse link enquanto ela não estiver logada.Toda vez que a pessoa clica nesse link, o cursor vai pra um campo de formulario ke tem na pagina, so isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

REspostas bem toscas. Depois voce estuda e melhora elas porque eu tava sem tempo...1) coloque <script>document.getElementById("id_do_campo").focus()</script> no fim da sua página2) coloca no onclick do link: onclick="document.getElementById("id_do_campo_de_login").focus()"3) Esse script aí, voce acha muitos no google. Eu não pesquisei não...Rolava dos moderas daqui moverem esta para javascript;

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.