[JS] Save as, maar ook met mht

Pagina: 1
Acties:

  • Blizard
  • Registratie: September 2001
  • Niet online
Er moet een website worden gebouwd waarbij de gebruiker een volledige pagina moet saven naar een .mht bestand. Echter worden alle toolbars geblocked in zijn IE.

Ik weet dat je dmv javascript een save as dialog kan openen, maar hier is de optie van mht verdwenen ?
Het is ook geen optie om een third party tool als chilcat ge gebruiken ... Zijn er nog andere opties of is het gewoon niet mogelijk ?

Een andere mogelijkheid is exporteren naar word, maar wanneer we het content type wijzigen naar rtf missen we uiteraard de css-class. Bestaat er iets als @media print dat we kunnen manipuleren ? Eigenlijk moet de pagina gewoon op een of andere manier worden ge-export.

Ik hoop dat de vragen een beetje duidelijk zijn ? (ik heb de search zeker bekeken ... !)

  • funkwurm
  • Registratie: December 2005
  • Laatst online: 22-02-2021
Ik snap niks van je probleem, maar als het voor IE is, kijk dan eens naar VBscript.

Deze taal kan over het algemeen meer dan javascript, de reden dat javascript dit soort dingen niet kan is over het algemeen veiligheid-gerelateerd.

  • André
  • Registratie: Maart 2002
  • Laatst online: 14:48

André

Analytics dude

Het opslaan van een pagina is natuurlijk voornamelijk iets wat door de software op de client geregeld word. De enige andere manier is om de .mht als download aan te bieden door hem bijvoorbeeld te zippen, dan zul je hem dus wel op de server in elkaar moeten draaien.

  • Blizard
  • Registratie: September 2001
  • Niet online
Dit stukje code kan er inderdaad voor zorgen dat het op de server klaargezet wordt :

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        public static string ConvertWebPageToMHTString(string url)
        {
            string data = String.Empty;
            CDO.Message cdoMessage = new CDO.MessageClass();
            ADODB.Stream adodbStream = null;
            cdoMessage.MimeFormatted = true;
            cdoMessage.CreateMHTMLBody(url, CdoMHTMLFlags.cdoSuppressObjects, "", "");
            
            adodbStream = cdoMessage.GetStream();
            cdoMessage.
            data = adodbStream.ReadText(adodbStream.Size);

            return data;
        }

Nu is het enige probleem nog dat de cdoSuppressObjects niet werkt .. Dus alle buttons blijven werken :(