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

Passagem de valores


Bruno Peinado

Pergunta

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>


$(function(){
	
	//.click é um script que executa ao clicar em um determinado botao
	//note que no formulario tem um button com id "btn"
	//nesse caso o btn é executado
	$("#sete").click(function(value){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + value;
	
	});
	
		$("#oito").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 8;
	
	});
	
		$("#nove").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 9;
	
	});
	
		$("#zero").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 0;
	
	});
	
		$("#um").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 1;
	
	});
	
		$("#dois").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 2;
	
	});
	
		$("#tres").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 3;
	
	});
	
		$("#quatro").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 4;
	
	});
	
		$("#cinco").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 5;
	
	});
	
		$("#seis").click(function(){
		var salvo = document.calc.visor.value;
		document.calc.visor.value = salvo + 6;
	
	});
	
		$("#subtracao").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "subtracao";
	
	});
	
	
		$("#soma").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "soma";
	
	});
	
	
		$("#divisao").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "divisao";
		});
	
		$("#exp").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "exp";
		});
		
		$("#multiplicar").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
			document.calc.visor.value = salvo + "multiplicar";
		});
		
		$("#dectobin").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "dectobin";
		});

		$("#bintodec").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "bintodec";
		});
		
		$("#raiz").click(function(){
		var salvo = document.calc.visor.value;
		var teste = /soma|multiplicar|subtracao|divisao|exp|dectobin|bintodec|raiz/;
		var compara = salvo.search(teste);
		if (compara != -1)
			document.calc.visor.value = "";
		else
		document.calc.visor.value = salvo + "raiz";
		});
		
		$("#clear").click(function(){
		document.calc.visor.value = "";
		});
	
	$("#btn").click(function(){
		
		//Aqui estamos recuperando os valores do formulario
		var visor = $("textarea[name=visor]").val();

		$.ajax({
			//finalmente estamos enviado magicamente
			//para o php
			type: "POST",
			data: { string_visor:visor },
			
			url: "calculadora.php",
			dataType: "html",
			success: function(result){
				//a funcao sucess recebe o retorno do php
				//importante que esse retorno é do tipo
				//html porque foi definido no dataType
				$("#content").html('');
				$("#content").append(result);
				//append joga o resultado em content
				document.calc.visor.value = (result);
			},
			//beforeSend – Ele recebe uma função, que vai ser 
			//executada assim que a requisição for enviada, 
			//veja que estou mostrando a div de carregamento.
			beforeSend: function(){
		  	  	$('#loading').css({display:"block"});
		  	},
	  	    complete: function(msg){
		  	  	$('#loading').css({display:"none"});
		  	}
			
			//diferença de complete e sucess
			//sucess somente é executado quando funciona
			//complete executa sempre, mesmoque não funcione

	 	});
	});
	
});

</script>


<form name="calc">
<textarea name="visor" cols="30" rows="4" readonly="readonly"></textarea>
<br />
	<BR>
  <table width="315" border="0" cellpadding="10" cellspacing="2">
    <tr>
      <td width="97"><p>
        <input type="button" value="7" button id="sete"/>
        <input type="button" value="8" button id="oito"/>
        <input type="button" value="9" button id="nove"/>

        <input type="button" value="4" button id="quatro"/>
        <input type="button" value="5" button id="cinco"/>
        <input type="button" value="6" button id="seis"/>
    
        <input type="button" value="1" button id="um"/>
        <input type="button" value="2" button id="dois"/>
        <input type="button" value="3" button id="tres"/>
        <input type="button" value="0" button id="zero"/>
      </td>
      <td width="172"><p>
        <input type="button" value="soma" button id="soma"/>
        <input type="button" value="divisao" button id="divisao"/>
       
          <input type="button" value="exp" button id="exp"/>
          <input type="button" value="multiplicar" button id="multiplicar"/>
      
          <input type="button" value="subtracao" button id="subtracao"/>
          <input type="button" value="raiz" button id="raiz"/>
          <input type="button" value="bintodec" button id="bintodec"/>
          <input type="button" value="dectobin" button id="dectobin"/>
      </p></td>
    </tr>
    <tr>
      <td>
      <input type="button" value="=" button id="btn"/>
      <input type="button" value="CE" button id="clear"/></td>
      <td>&nbsp;</td>
    </tr>
  </table>
</form>

<BR />

<!-- Importante entender essa id="btn", isso é uma identificação
para o script acima -->
<div id="loading" style="display: none;">Calculando. Por favor, Aguarde!</div>
<div id="content"></div>

Pessoal, ali na linha em vermelho.

$("#oito").click(function(){

var salvo = document.calc.visor.value;

document.calc.visor.value = salvo + 8;

Eu queria tirar o +8 e colocar o value do button <input type="button" value="8" button id="oito"/>

Eu tentei assim

$("#oito").click(function(value){
        var salvo = document.calc.visor.value;
document.calc.visor.value = salvo + value;

mas o value não pega o value=8 do meu button, como que eu faço pra pegar o value ?

Vocês podem ver que eu fiz uma coisa bem besta, usei repeti uma função pra cada numero 0,1,2,3,4,5,6,7,8,9.

Eu sei que tem como deixar uma unica função genérica pro value, essa é a ideia mas eu não sei como.

Editado por Bruno Peinado
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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...