Ir para conteúdo

POWERED BY:

Arquivado

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

Martinsrj

JavaScript com ASP

Recommended Posts

Uma dúvida, existe como eu criar vários botões como Soma, Subtração e quando o usuario clicar no botão soma executar o metodo: obj.soma() (ASP)

e quando o usuario clicar no botão subtração executar o metodo: obj.subtracao()

Pagina Principal: indexCalculadora.asp

<!-- #include file ="class2Calculadora.asp" -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>###::: Classe Principal - Calculadora :::###</title>
</head>
<body>
<%
	dim obj
	Set obj = new Calculadora
    obj.Calculadora Request.Form("x"), Request.Form("y")
	obj.subtracao()
    obj.soma()
    obj.ToString() 
    set obj = nothing
 %>
<br /><br />
<form method="post" action=""> 
<label>Calculadora</label><br />
Digite o Primeiro Valor:   <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="submit" value="Soma" id="btnSoma" name="btnSoma" onclick=""/>
<input type="submit" value="Subtração" id="btnSub" name="btnSub" onclick=""/>
</form> 

</body>
</html>
Pagina: class2Calculadora.asp

<%
''' Class Calculadora
''' <author>Paulo Martins</author>
Class Calculadora
	Private x_
	Private y_
        
'--        Private Sub Class_Initialize()
'            x_ = 6
'            y_ = 3
'--        End Sub
        
'        Private Sub Class_Terminate()
'        End Sub
        
        Public Sub Calculadora(x_, y_)
		    x = x_
		    y = y_
	    End Sub
        
        Public Property Get x()
        	x=x_
        End Property 
         
        Public Property Let x(value)
        	x_=value
        End Property
        
        Public Property Get y()
        	y=y_
        End Property  
        
        Public Property Let y(value)
        	y_=value
        End Property
        
        Public Function Soma()
            soma = CInt(me.x) + CInt(me.y)
            Response.Write ("A Soma de X e Y: " & soma)
            Response.Write ("<br>")
        End Function
        
        Public Function subtracao()
            subtracao = CInt(me.x) - CInt(me.y)
            Response.Write ("A Subtração de X e Y: " & subtracao)
            Response.Write ("<br>")
        End Function
        
        Public Function ToString()
        		ToString = "<br>O Valor de X vale: " & me.x & "<br>O Valor de Y vale: " & me.y
                Response.Write ToString
        End Function
End class

'-- class Principal
'--	dim obj
'--	Set obj = new Calculadora
'--    obj.Calculadora 7, 3
'--    obj.x = 8
'--    obj.y = 4
'--	obj.subtracao() 'Chamando a função soma.
'--    obj.soma()
'--    obj.ToString() 
'--    set obj = nothing
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal, bom dia!

Consegui fazer a calculadora e está funcionando perfeitamente em ASP, porem ele carrega a pagina. Quero fazer em JQuery e assim não venha crregar a pagina.

Aqui vai o código da pagina principal(indexCalculadora.asp):

<!-- #include file ="class2Calculadora.asp" -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
<title>###::: Classe Principal - Calculadora :::###</title>
</head>
<body>

<form method="post" action="indexCalculadora.asp"> 
<label>Calculadora</label><br />
Digite o Primeiro Valor: <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="submit" value="Somar" id="btnSoma" name="btnCalculo" />
<input type="submit" value="Subtrair" id="btnSubtracao" name="btnCalculo" />
<input type="submit" value="Multiplicacao" id="btnMultiplicacao" name="btnCalculo" />
<input type="submit" value="Divisao" id="btnDivisão" name="btnCalculo" />
<input type="reset" value="Limpa" id="btnLimpa" name="btnCalculo" />
</form>
<br /><br />

<%
'<autor>Paulo Martins / paulomartinsrj@gmail.com</autor>
'Response.Charset="utf-8"
If (Request.Form("btnCalculo") = "Somar") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.soma()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Subtrair") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.subtracao()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Multiplicacao") Then    
	'Response.Write(Request.Form("btnCalculo"))
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.multiplicacao()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Divisao") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.divisao()    
	obj.ToString()     
	'set obj = nothing
End If 

set obj = nothing
%>

</body>
</html>

Abaixo segue a minha classe:

<%
''' <autor>Paulo Martins / paulomartinsrj@gmail.com</autor>
Class Calculadora
	Private x_
	Private y_
'--     Private Sub Class_Initialize()
'       	x_ = 6
'       	y_ = 3
'--     End Sub
'       Private Sub Class_Terminate()
'       End Sub
        
        Public Sub Calculadora(x_, y_)
		    x = x_
		    y = y_
	    End Sub
        Public Property Get x()
        	x=x_
        End Property 
        Public Property Let x(value)
        	x_=value
        End Property
        Public Property Get y()
        	y=y_
        End Property  
        Public Property Let y(value)
        	y_=value
        End Property
        
        Public Function Soma()
            varSoma = cdbl(me.x) + cdbl(me.y)
            Response.Write ("A Soma de X e Y: " & varSoma)
            Response.Write ("<br>")
        End Function
     	Public Function subtracao()
            varSubtracao = cdbl(me.x) - cdbl(me.y)
            Response.Write ("A Subtração de X e Y: " & varSubtracao)
            Response.Write ("<br>")
        End Function
		Public Function multiplicacao()
            varMultiplicacao = cdbl(me.x) * cdbl(me.y)
            Response.Write ("A Multiplicação de X e Y: " & varMultiplicacao)
            Response.Write ("<br>")
        End Function
        Public Function divisao()
            varDivisao = CInt(me.x) / CInt(me.y)
            Response.Write ("A Divisão de X e Y: " & varDivisao)
            Response.Write ("<br>")
        End Function
        Public Function ToString()
        		ToString = "<br>O Valor de X vale: " & me.x & "<br>O Valor de Y vale: " & me.y
                Response.Write ToString
        End Function
End class

'-- class Principal
	dim obj
	Set obj = new Calculadora
'--    obj.Calculadora 7, 3
'--    obj.x = 8
'--    obj.y = 4
'--	obj.subtracao() 'Chamando a função soma.
'--    obj.soma()
'--    obj.ToString() 
'--    set obj = nothing
%>
Desde já agradeço pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

boas, vou por isto assim por alto sem testar, tem o seu html

 


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
<title>###::: Classe Principal - Calculadora :::###</title>
      
	<script language="JavaScript1.2">
//não esqueça de importar o jquery
	$(document).ready(function() {

$(".fazerconta").click(function(){

 $.ajax({
   type: "POST",
   url: "calculadora.asp",
   data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val()+",
   success: function(msg){
     alert( "Resultado: " + msg );
   }
 });

     	
  });
      
	});
	</script>

</head>
<body>

<form> 
<label>Calculadora</label><br />
Digite o Primeiro Valor: <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="submit" class="fazerconta" value="Somar" id="btnSoma" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Subtrair" id="btnSubtracao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Multiplicacao" id="btnMultiplicacao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Divisao" id="btnDivisão" name="btnCalculo" />
<input type="reset" value="Limpa" id="btnLimpa" name="btnCalculo" />
</form>
<br /><br />
</body>
</html>


depois o ficheiro calculadora.asp

 

<!-- #include file ="class2Calculadora.asp" -->
<%
'veja qual a acção pedida
select case request("accao")
case "Somar"

'chama a sua classe e faz a soma
'e dá response.write do resultado

end select

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde Saloeric!

Com o código abaixo a calculadora funciona normalmente, porem continua carregando a pagina.

Se eu colocar conforme o código que você mencionou a calculadora não executa nenhuma operação, dando erro nessa linha:

data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val()+",

.

<!-- #include file ="class2Calculadora.asp" -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
<title>###::: Classe Principal - Calculadora :::###</title>
<script type="text/javascript" src="jquery.js"></script>
<script language="Javascript">
//não esquecer de importar o jquery        
	$(document).ready(function() {

	 $(".fazerconta").click(function(){ 

	  $.ajax({   
		type: "POST",   
//		url: "calculadora.asp",   
		url: "indexCalculadora.asp",   
		data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val()+",   
		success: function(msg){
     	alert( "Resultado: " + msg );
	 		} 
	   });          
	  });              
	});        
</script>
 
</head>
<body>

<form method="post" action="indexCalculadora.asp"> 
<label>Calculadora</label><br />
Digite o Primeiro Valor: <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="submit" class="fazerconta" value="Somar" id="btnSoma" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Subtrair" id="btnSubtracao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Multiplicacao" id="btnMultiplicacao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Divisao" id="btnDivisão" name="btnCalculo" />
<input type="reset" value="Limpa" id="btnLimpa" name="btnCalculo" />
</form>
<br /><br />

<%
'<autor>Paulo Martins / paulomartinsrj@gmail.com</autor>
'Response.Charset="utf-8"

If (Request.Form("btnCalculo") = "Somar") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.soma()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Subtrair") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.subtracao()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Multiplicacao") Then    
	'Response.Write(Request.Form("btnCalculo"))
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.multiplicacao()    
	obj.ToString()     
	'set obj = nothing
End If
If (Request.Form("btnCalculo") = "Divisao") Then    
	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.divisao()    
	obj.ToString()     
	'set obj = nothing
End If 

set obj = nothing
%>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boas, eu não testei mesmo, mas verifique se tem a ultima versão do jquery(1.3.2) se não me engano, outra coisa, na página do formulário tire todo o asp, tire o include e a parte de baixo, o ficheiro asp é á parte, é acedido via ajax, o formulário não vai ser submetido, só vai ser adicionada uma acção quando você clicar num dos botões que tem a class="fazerconta".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Saloeric, boa tarde!

Refiz o que você solcitou mas continua dando o erro nessa linha: data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val()+",

 

Pagina: indexCaculadora.asp

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
<title>###::: Classe Principal - Calculadora :::###</title>

<script src="jquery-1.3.2.min.js" language="javascript1.2" type="text/javascript"></script>
<script type="text/javascript" charset="utf-8"> 

//não esquecer de importar o jquery        
	$(document).ready(function() {

	 $(".fazerconta").click(function(){ 

	  $.ajax({   
		type: "POST",   
		url: "calculadora.asp",   
		data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val()+",   
		success: function(msg){
     	alert( "Resultado: " + msg );
	 		} 
	   });          
	  });              
	});        
</script>
 
</head>
<body>

<form> 
<label>Calculadora</label><br />
Digite o Primeiro Valor: <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="submit" class="fazerconta" value="Somar" id="btnSoma" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Subtrair" id="btnSubtracao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Multiplicacao" id="btnMultiplicacao" name="btnCalculo" />
<input type="submit" class="fazerconta" value="Divisao" id="btnDivisão" name="btnCalculo" />
<input type="reset" value="Limpa" id="btnLimpa" name="btnCalculo" />
</form>
<br>
</body>
</html>

Pagina: class2Calculadora.asp

<%
''' <autor>Paulo Martins / paulomartinsrj@gmail.com</autor>
Class Calculadora
	Private x_
	Private y_
'--     Private Sub Class_Initialize()
'       	x_ = 6
'       	y_ = 3
'--     End Sub
'       Private Sub Class_Terminate()
'       End Sub
        
        Public Sub Calculadora(x_, y_)
		    x = x_ 
		    y = y_
	    End Sub
        Public Property Get x()
        	x=x_
        End Property 
        Public Property Let x(value)
        	x_=value
        End Property
        Public Property Get y()
        	y=y_
        End Property  
        Public Property Let y(value)
        	y_=value
        End Property
        
        Public Function Soma()
            varSoma = cdbl(me.x) + cdbl(me.y)
            Response.Write ("A Soma de X e Y: " & varSoma)
            Response.Write ("<br>")
        End Function
     	Public Function subtracao()
            varSubtracao = cdbl(me.x) - cdbl(me.y)
            Response.Write ("A Subtração de X e Y: " & varSubtracao)
            Response.Write ("<br>")
        End Function
		Public Function multiplicacao()
            varMultiplicacao = cdbl(me.x) * cdbl(me.y)
            Response.Write ("A Multiplicação de X e Y: " & varMultiplicacao)
            Response.Write ("<br>")
        End Function
        Public Function divisao()
            varDivisao = CInt(me.x) / CInt(me.y)
            Response.Write ("A Divisão de X e Y: " & varDivisao)
            Response.Write ("<br>")
        End Function
        Public Function ToString()
        		ToString = "<br>O Valor de X vale: " & me.x & "<br>O Valor de Y vale: " & me.y
                Response.Write ToString
        End Function
End class

'-- class Principal
	dim obj
	Set obj = new Calculadora
'--    obj.Calculadora 7, 3
'--    obj.x = 8
'--    obj.y = 4
'--	obj.subtracao() 'Chamando a função soma.
'--    obj.soma()
'--    obj.ToString() 
'--    set obj = nothing
%>

Pagina: calculadora.asp

<!-- #include file ="class2Calculadora.asp" -->
<%
If (request("accao") = "Somar") Then    
'	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.soma()    
	obj.ToString()
	'set obj = nothing
End If
If (request("accao") = "Subtrair") Then    
'	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.subtracao()    
	obj.ToString()     
	'set obj = nothing
End If
If (request("accao") = "Multiplicacao") Then    
	'Response.Write(Request.Form("btnCalculo"))
'	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.multiplicacao()    
	obj.ToString()     
	'set obj = nothing
End If
If (request("accao") = "Divisao") Then    
'	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.divisao()    
	obj.ToString()     
	'set obj = nothing
End If 

set obj = nothing
%>
Desde já agradeço pela ajuda e esclareimeno.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tive a fazer aqui, mudei alguma coisa, adapte para o seu


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pt" xml:lang="pt">
<head>   
<title>###::: Classe Principal - Calculadora :::###</title>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
	<meta name="Language" content="pt" />
<script type="text/javascript" src="js/jquery.js"></script>
<script language="JavaScript1.2">       
        $(document).ready(function() {
         $(".fazerconta").click(function(){ 
		 
  			 $.ajax({
   				type: "POST",
   				url: "calculadora.asp",
   				data: "accao="+$(this).attr('value')+"&x="+$('#x').val()+"&y="+$('#y').val(),
   				success: function(msg){
     				alert( "Resultado: " + msg );
   				}
 			});
  
           
          });              
        });        
</script>
 
</head>
<body>

<form> 
<label>Calculadora</label><br />
Digite o Primeiro Valor: <input type="text" id="x" name="x" /><br /> 
Digite o Segundo Valor:  <input type="text" id="y" name="y" /><br /> 
<input type="Button" class="fazerconta" value="Somar" id="btnSoma" />
<input type="Button" class="fazerconta" value="Subtrair" id="btnSubtracao" />
<input type="Button" class="fazerconta" value="Multiplicacao" id="btnMultiplicacao" />
<input type="Button" class="fazerconta" value="Divisao" id="btnDivisão" />
<input type="reset" value="Limpa" id="btnLimpa" name="btnCalculo" />
</form>

<br>
</body>
</html>


<%
response.buffer = true
Response.Charset="iso-8859-1"
response.contentType = "text/plain"
response.expires = 0

''' <autor>Paulo Martins / paulomartinsrj@gmail.com</autor>
Class Calculadora
        Private x_
        Private y_
'--     Private Sub Class_Initialize()
'               x_ = 6
'               y_ = 3
'--     End Sub
'       Private Sub Class_Terminate()
'       End Sub
        
        Public Sub Calculadora(x_, y_)
                    x = x_ 
                    y = y_
            End Sub
        Public Property Get x()
                x=x_
        End Property 
        Public Property Let x(value)
                x_=value
        End Property
        Public Property Get y()
                y=y_
        End Property  
        Public Property Let y(value)
                y_=value
        End Property
        
        Public Function Soma()
            varSoma = cdbl(me.x) + cdbl(me.y)
            Response.Write ("A Soma de X e Y: " & varSoma)
            Response.Write ("<br>")
        End Function
        Public Function subtracao()
            varSubtracao = cdbl(me.x) - cdbl(me.y)
            Response.Write ("A Subtração de X e Y: " & varSubtracao)
            Response.Write ("<br>")
        End Function
                Public Function multiplicacao()
            varMultiplicacao = cdbl(me.x) * cdbl(me.y)
            Response.Write ("A Multiplicação de X e Y: " & varMultiplicacao)
            Response.Write ("<br>")
        End Function
        Public Function divisao()
            varDivisao = CInt(me.x) / CInt(me.y)
            Response.Write ("A Divisão de X e Y: " & varDivisao)
            Response.Write ("<br>")
        End Function
        Public Function ToString()
                        ToString = "<br>O Valor de X vale: " & me.x & "<br>O Valor de Y vale: " & me.y
                Response.Write ToString
        End Function
End class

dim obj 
set obj = new Calculadora

If (request("accao") = "Somar") Then    
	    obj.Calculadora Request.Form("x"), Request.Form("y")    
        obj.soma()    
        obj.ToString()
        'set obj = nothing
End If
If (request("accao") = "Subtrair") Then    
'       obj.Calculadora Request.Form("x"), Request.Form("y")    
        obj.subtracao()    
        obj.ToString()     
        'set obj = nothing
End If
If (request("accao") = "Multiplicacao") Then    
        'Response.Write(Request.Form("btnCalculo"))
'       obj.Calculadora Request.Form("x"), Request.Form("y")    
        obj.multiplicacao()    
        obj.ToString()     
        'set obj = nothing
End If
If (request("accao") = "Divisao") Then    
'       obj.Calculadora Request.Form("x"), Request.Form("y")    
        obj.divisao()    
        obj.ToString()     
        'set obj = nothing
End If 

set obj = nothing

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua dando o mesmo erro.

Pelo que eu pude verificar é que o jquery não insere os dados no contrutor do ASP e com isso não executa a operação:

Public Sub Calculadora(x_, y_)
   x = x_ 
   y = y_
End Sub
Uma situação que verifiquei foi a parte desse código:

If (request("accao") = "Somar") Then    
'	obj.Calculadora Request.Form("x"), Request.Form("y")    
	obj.soma()    
	obj.ToString()
	'set obj = nothing
End If
Existe uma linha comentada, porem se eu descomentar essa linha quem vai recuperar o valor vai ser o ASP.

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu testei e está a funcionar, para quando clica no botão de somar, copie o código que eu fiz e teste, veja o caminho para o jquery, uma coisa que alterei foi os seus botões de tipo submit para botão mesmo.

 

Tem que tirar a pelica para o asp recuperar os dados que a pessoa digitar, se não digitar pode fazer um if else end if na sub calculadora

 

if x_="" then x_=7

if y_ ="" then y_=5

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.