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

Duvida...


Lucas Phillip

Pergunta

Olá,

bom, não sei explicar direito o q eu quero, então vou fazer com exemplos biggrin.gif

tem essas duas funções

function altera_força1(qt){
  document.form1.forca1.value = parseInt(document.form1.forca1.value) + qt
  if (document.form1.forca1.value<0)
  	document.form1.forca1.value = 0
	}
	function altera_força2(qt){
  document.form1.forca2.value = parseInt(document.form1.forca2.value) + qt
  if (document.form1.forca2.value<0)
  	document.form1.forca2.value = 0
	}
so que eu queria trocar ela por 1 so... então eu fiz
function altera_força(campo, qt){
  document.form1.campo.value = parseInt(document.form1.campo.value) + qt
  if (document.form1.campo.value<0)
  	document.form1.campo.value = 0
	}

so que da erro, porque procura "campo" no formulario...

como eu arrumo isso? (se alguém entendeu o que eu quero hehe biggrin.gif )

vlw !

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

o que tah acontecendo é o que você falou, ele procura um campo de nome "campo" no formulário e não acha. Existe duas formas de resolver isso.

Uma é a forma de você passar o valor do campo

function altera_forca(campo, qt){

var temp = parseInt(campo.value) + qt

if (temp<0)

  campo.value = 0

}

<input type="text" name="teste" onblur="altera_forca(this, 2)">

Passando o "this" você passa o objeto todo e a partir dele você pode pegar qualquer propriedade do input.

A segunda forma é você passar o nome e utilizar o método getElementsByName().

function altera_forca(nome, qt){

var temp = parseInt(document.getElementsByName(nome)[0].value) + qt

if (temp<0)

  document.getElementsByName(nome)[0].value = 0

}

<input type="text" name="teste" onblur="altera_forca(this.name, 2)">

Testeia e vê qual você achar melhor...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

  • 0

eu tentei, mas nem deu mt certo não... não era bem isso o que eu queria

(ou era e eu não soube usar direito tongue.gif )...

é +- isso que eu quero:

tem 4 campos text que estao "readOnly"... ai eu coloquei imagens para poder alterar o valor do compo...

so que como são 4 campos, eu não queriar criar 4 funçoes, 1 pra cada.. eu queria criar 1 só pras 4..

ai eu queria que o valor "campo" fosse definido no input..

function altera(campo, qt){
(...)
<a onclick='altera(forca1, -10)' href='javascript:void(0)'>

.. agora com isso mesmo que você falou da pra fazer o q eu quero? ou tem q ser de outro jeito, porque eu testei e não deu sad.gif

falou

Link para o comentário
Compartilhar em outros sites

  • 0

As duas functions q te passei funfeiam, o problema é que você não tah usando elas da forma correta (na verdade você não está passando os parâmetros corretamente)...

No exemplo que você passou, você teria q usar o nome que é a segunda function q te passei, só q como você está passando um nome, você precisa passar como string.... com "aspas".

Ex.:

<a onclick="altera('forca1', -10)" href='javascript:void(0)'>

Se você quisesse usar a primeira function você precisaria passar o objeto todo que no caso não seria com aspas passaria assim: document.forms[0].forca1

Vê se isso te ajuda.... qualquer coisa posta ae....

Abraço

Crystian

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...