Asp clásico incluyen
-
02-07-2019 - |
Pregunta
Estoy tratando de separar a algunos lógica asp en una página separada.Por ahora, estoy tratando de llamar a una función simple.
Aquí está el índice simple página en la que estoy utilizando
<html>
<head>
<title>Calling a webservice from classic ASP</title>
</head>
<body>
<%
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then
%>
<!--#include file="aspFunctions.asp"-->
<%
doStuff()
End If
%>
<FORM method=POST name="form1" ID="Form1">
ID:
<INPUT type="text" name="corpId" ID="id" value="050893">
<BR><BR>
<INPUT type="submit" value="GO" name="submit1" ID="Submit1" >
</form>
</body>
</html>
Aquí es aspfunctions.asp
sub doStuff()
Response.Write("In Do Stuff")
end sub
Cuando me golpeó el botón de enviar en mi formulario me sale el siguiente sub doStuff() Respuesta.Escribir("En Hacer las Cosas") end sub
Microsoft VBScript en tiempo de ejecución error '800a000d'
¿Alguien tiene alguna idea de qué puedo estar haciendo mal?
Cualquier ayuda es muy apreciada
Gracias Damien Tipo de desajuste:'doStuff'
/uat/damien/index.asp, línea 15
Solución
aspfunctions.asp
debe estar dentro de las etiquetas para el asp es "ejecutado", por ejemplo,
aspfunctions.asp:
<%
sub doStuff()
Response.Write("In Do Stuff")
end sub
%>
De lo contrario, la asp en aspfunctions.asp
es visto como texto sin formato, así como la medida de que el servidor de que se trate, doStuff
nunca ha sido definido.
Otros consejos
Usted debe tener las funciones de asp en el interior de la <% %> etiqueta.
Estás incluyendo el otro archivo dentro de una instrucción if.Esto no significa que es incluido dinámicamente, no lo es.Siempre va a ser incluido.
Para ver esto en acción pruebe este ejemplo:
<%
If 1=0 Then
'We never get here
%>
<!--#include file="aspFunctions.asp"-->
<%
dostuff()
End If
dostuff()
%>
Si recuerdo correctamente, necesita ningún soporte para llamadas sin valor de retorno (no probada solución):
doStuff
Hacer cambios en dos lugares:
- En aspfunctions.asp escribir "sub doStuff" en lugar de
sub doStuff()
- Llamar a la función como
doStuff
nodoStuff()