Tom Kruse: Übergabe von ASP Variablen in ein neues Fenster übergeben..WIE ???

Hallo Leute.

Ich habe ein Problem mit einer DB Abfrage. Folgendes:

Ich übergebe die ID aus einer Access DB mit folgendem String:

<a href="../display/veranst_display.asp?veranID=<%=FP_FieldVal(fp_rs,"ID")%>" target="AllgemeinesRechts"><%=FP_FieldVal(fp_rs,"Veranstaltung")%></a>

Dadurch wird in der veranst_display.asp die ID aus der DB benutzt und mit diesem Parameter der in der DB Zeile stehende Rest in dieser ASP Seite ausgegeben. Bis dahin keine Probleme (solange ich kein neues Fenster mit dem Ergebnis öffnen will).

Nun benutze ich folgenden JavaScript Befehl im Head:

<SCRIPT Language='JavaScript'>
function winopen(){msg=open ("","NewWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no, resizable=no,copyhistory=yes,width=800,height=600");msg.location = "../display/veranst_display.asp"}
</SCRIPT>

Den Befehl "onClick="winopen()" füge ich folgendermaßen ein

<a href="../display/veranst_display.asp?veranID=<%=FP_FieldVal(fp_rs,"ID")%>" target="AllgemeinesRechts" onClick="winopen();"><%=FP_FieldVal(fp_rs,"Veranstaltung")%></a>

Das Einfüger von "onClick...." verursacht aber eine Fehlermeldung. Zum Beispiel:

Database Results Error
Description: [Microsoft][ODBC Microsoft Access 97 -Treiber] Überzählig: ) in Abfrageausdruck '(ID = )'.
Number: -2147217900 (0x80040E14)
Source: Microsoft OLE DB Provider for ODBC Drivers

One or more form fields were empty. You should provide default values for all form fields that are used in the query.

Die Datenfelder in meiner DB sind alles als "Nicht Pflicht" und "Leer erlaubt" eingestellt.

Kann mir jemand sagen, woran es krankt und wie ich es lösen kann?

Ich hoffe, ich habe nicht alzuviel Code eingebracht....

Vielen Dank

Tom

  1. Nun benutze ich folgenden JavaScript Befehl im Head:

    <SCRIPT Language='JavaScript'>
    function winopen(){msg=open ("","NewWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no, resizable=no,copyhistory=yes,width=800,height=600");msg.location = "../display/veranst_display.asp"}
    </SCRIPT>

    Den Befehl "onClick="winopen()" füge ich folgendermaßen ein

    <a href="../display/veranst_display.asp?veranID=<%=FP_FieldVal(fp_rs,"ID")%>" target="AllgemeinesRechts" onClick="winopen();"><%=FP_FieldVal(fp_rs,"Veranstaltung")%></a>

    Hallo,

    probiers doch mal so:
    <SCRIPT language="JavaScript">
    function winopen(PageLocation)
       {
       var msg=open(PageLocation,"NewWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no, resizable=no,copyhistory=yes,width=800,height=600");
       }
    </SCRIPT>

    <a href="javascript:winopen('../display/veranst_display.asp?veranID=<%=FP_FieldVal(fp_rs,"ID")%>')"><%=FP_FieldVal(fp_rs,"Veranstaltung")%></a>

    Wenn du lediglich ein Frameset ansprechen willst, reicht auch folgendes:

    <a href="../display/veranst_display.asp?veranID=<%=FP_FieldVal(fp_rs,"ID")%>" target="TargetFrame"><%=FP_FieldVal(fp_rs,"Veranstaltung")%></a>

    TargetFrame sollte hier der Name deines Zielframes sein.

    Tschau, Stefan

    1. Hallo Stefan,

      vielen herzlichen Dank. Es funktioniert !!!!

      Das Problem an der Sache war, daß die Variable, in dem Fall die ID, nicht an die neue Page mitgegeben wurde. Dadurch wußte die ASP Page natürlich nicht, welche Information sie anzeigen sollte.

      Wahrscheinlich lag es an der Reihenfolge der Befehle im Link..????

      Gruß

      Tom