Frage

Ich versuche, einige asp Logik heraus in einer anderen Seite zu trennen. Vorerst Ich versuche, eine einfache Funktion aufzurufen.

Hier ist die einfache Index-Seite, die ich mit

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

Hier ist aspfunctions.asp

sub doStuff()
    Response.Write("In Do Stuff")
end sub

Wenn ich die Taste auf meinem Formular getroffen bekomme ich die unten Unter doStuff () Response.Write ( "In Do Stuff") end sub

Microsoft VBScript-Laufzeitfehler '800a000d'

Hat jemand eine Idee, was ich falsch sein könnte tun?

Jede Hilfe wird sehr geschätzt

Danke Damien Typenkonflikt: 'doStuff'

/uat/damien/index.asp, Zeile 15

War es hilfreich?

Lösung

aspfunctions.asp sollte innerhalb von Tags sein, so dass die asp "ausgeführt" wird, z.

aspfunctions.asp:
<%
    sub doStuff()
        Response.Write("In Do Stuff")
    end sub
%>

Ansonsten ist die asp in aspfunctions.asp ist nur als Klartext zu sehen, so weit, wie der Server angeht, so hat doStuff nie definiert wurde.

Andere Tipps

Sie müssen die asp-Funktionen innerhalb der <%%> Tag haben.

Sie sind mit der anderen Datei innerhalb einer if-Anweisung. Dies bedeutet nicht, dass es dynamisch enthalten ist, ist es nicht. Es wird immer aufgenommen werden.

Um dies in Aktion versuchen, diese Probe zu sehen:

<%
If 1=0 Then
'We never get here
%>
    <!--#include file="aspFunctions.asp"-->
<%
    dostuff()
End If
dostuff()
%>

Wenn ich mich richtig erinnere, müssen Sie keine Klammern für Anrufe ohne einen Rückgabewert (ungetestet Lösung):

doStuff

Nehmen Sie Änderungen an zwei Stellen:

  1. In aspfunctions.asp write "sub doStuff" statt sub doStuff()
  2. Rufen Sie die Funktion als doStuff nicht doStuff()
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top