Avatar billede anders_cp Nybegynder
09. oktober 2009 - 21:09 Der er 1 løsning

javascript - Previous Page

Hejsa
Jeg er ved at implementere en hjemmeside til at kunne have betaling på. Dette foregår via epay's betalingsmodul.

Kort fortalt starter jeg bare et epay javascript op og overfører værdierne ved <input hidden-field>. Således:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Epay.aspx.cs"
Inherits="hjemmeside.Website.Epay" %>
<%@ PreviousPageType VirtualPath="~/Payment2.aspx" %>


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


<script language="jscript">

function init()
{
  // document.ePay.accepturl.value = "http://www.dr.dk"
    open_ePay_window();
}
</script>



<html>
    <head runat="server">
        <title>ePay | Standard Payment Window - example 1</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
       
        <script type="text/javascript" src="http://www.epay.dk/js/standardwindow.js">
       
       
        </script>
    </head>
<body onload="open_ePay_window()">
   

   
   
    <form  runat="server" action="https://ssl.ditonlinebetalingssystem.dk/popup/default.asp"
        method="post" name="ePay" target="ePay_window" id="ePay">
   
        <input type="hidden" name="orderid" value="" />
        <input type="hidden" name="accepturl" value="http://www.servicepartner.dk/Redirect.aspx" />
        <input type="hidden" name="declineurl" value="http://www.servicepartner.dk/PaymentDeclined.aspx" />
       
        <input type="hidden" name="group" value="" />
        <input type="hidden" name="description" value="This is the description of the order / payment, which will be available in the administration of ePay." />
       
       
       
        <asp:HiddenField runat="server" ID="amount" />
        <asp:HiddenField runat="server" ID="merchantnumber" />
        <asp:HiddenField runat="server" ID="currency" />
        <asp:HiddenField runat="server" ID="language" />
        <asp:HiddenField runat="server" ID="instantcapture" />
        <asp:HiddenField runat="server" ID="ordretext" />
        <asp:HiddenField runat="server" ID="windowstate" />       
        <asp:HiddenField runat="server" ID="authmail" />
        <asp:HiddenField runat="server" ID="addfee" />
    </form>

   
</body>   
</html>


Det fungerer fint, bortset fra at jeg ikke kan bruge accepturl og declineurl (der blot skal føre kunden tilbage til hovedsiden når betalingen er overstået) ved følgende:
Lige så snart jeg henter værdierne fra foregående side ved
PreviousPage.pp_TotalAmount.Text; går det galt. Dvs alt virker foruden at jeg ikke kan redericte epays javascript. Her er .cs-filen:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Text.RegularExpressions;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace hjemmeside.Website
{
    public partial class Epay : hjemmeside.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

            SetTitle("Betaling. Trin 3 af 4");
            if (!IsPostBack)
            {

                merchantnumber.Value = "8882871"; // Other number on production
                currency.Value = "208";
                language.Value = "1"; // 1-Danish, 2-English
                instantcapture.Value = "1"; // 0-Payment will be paid manually. 1- payment: right away
                ordretext.Value = "Tak for din betaling.";
                windowstate.Value = "1"; // windowstate 1 = popup-window
                authmail.Value = "test@msn.com";
                addfee.Value = "1"; // transaction charge 1: Customer 0: ServicePartner
               
               
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                // HER GÅR DET GALT prg.a. jeg henter data fra foregående Previous page
                if (Page.PreviousPage != null)
                {
                    amount.Value = PreviousPage.pp_TotalAmount.Text;
                    // orderid.Value = PreviousPage.pp_ActivityID.Text;
                   
                  // string notevalue = PreviousPage.pp_TextBoxCustomerDescription.Text;

                    // description.Value = TransformCharacters(notevalue);
                }
                else
                {
                    Page.Response.Write("FEJL!! previouspage er null");
                }
           
               
             
            }



        }


        /*

        "     citationstegn      &quot; 
        &     og                 &amp;    
        '     apostrof         &apos;
        <     mindre end         &lt;
        >     større end         &gt;    
            fast mellemrum     &nbsp;    
        Å     stort Å         &Aring;
        Æ     stort Æ         &AElig;
        Ø     stort Ø         &Oslash;
        å     lille å         &aring;    
        æ     lille æ         &aelig;    
        ø     lille ø         &oslash;    
        * */
        private string TransformCharacters(string textstring)
        {
            string tmpstring = textstring;
            tmpstring = Regex.Replace(tmpstring, "&", "&amp;");
            tmpstring = Regex.Replace(tmpstring, "ø", "&oslash;");
            tmpstring = Regex.Replace(tmpstring, "æ", "&aelig;");
            tmpstring = Regex.Replace(tmpstring, "å", "&aring;");
            tmpstring = Regex.Replace(tmpstring, "Ø", "&Oslash;");
            tmpstring = Regex.Replace(tmpstring, "Æ", "&AElig;");
            tmpstring = Regex.Replace(tmpstring, "Å", "&Aring;");
            tmpstring = Regex.Replace(tmpstring, ">", "&gt;");
            tmpstring = Regex.Replace(tmpstring, "<", "&lt;");
            tmpstring = Regex.Replace(tmpstring, "'", "&apos;");
           
           
            return tmpstring;
        }
    }
}
Avatar billede anders_cp Nybegynder
23. oktober 2009 - 12:55 #1
lukker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester