Glengamoi (Forum) · AspHeute · .NET Heute (RSS-Suche) · AspxFiles (Wiki) · .NET Blogs
ASP German Homepage Homepage
 

Liste

.NET 2.0 (1)
.NET Allgemein (16)
.NET Fu (5)
ADO.NET (11)
Aprilscherz (3)
ASP Grundlagen (44)
ASP Tricks (83)
ASP.NET (44)
ASPIntranet.de (5)
C# (28)
Datenbank (44)
Dokumentation (4)
IIS 6.0 (1)
Komponenten (29)
Optimierung (10)
Server (21)
Sicherheit (34)
Tee Off (6)
VB.NET (6)
WAP (8)
Web Services (11)
XML (9)

RSS 2.0 - Die neuesten fünf Artikel auf AspHeute.com


 

Suchen





 

English Articles
Chinese Articles
Unsere Autoren
 
Link zu AspHeute
Impressum
Werben
Anfragen

HTML zu ASP konvertieren

Geschrieben von: Christian Holm
Kategorie: ASP Grundlagen

In diesem Artikel zeige ich Ihnen eine einfache Methode HTML-formatierten Text ASP tauglich zu machen. Das Script, welches ich Ihnen präsentieren werde besteht aus einem Online Interface, in dem Sie den HTML Code einfügen, und ihn dann mit einem Mausklick konvertieren können.

Wer sich's noch nicht vorstellen kann - wir wollen Code wie diesen

<b>AspHeute ist toll</b><br>
...

in folgendes umzuwandeln:

Response.Write "<b>AspHeute ist toll</b><br>"

Damit werden existierende HTML Dateien in ASP schnell "einsetzbar" - als Ansammlung von Response.Write Statements.

Die Durchführung

Zur Implementierung gibt es zwei Wege: der übliche eines einfachen HTML Formulars und serverseitiger Logik, oder der schnellere einer vollständig client-seitigen Lösung. Um zu demonstrieren, daß der Server nicht immer in einer guten Lösung beteiligt sein muß, "treiben" wir uns heute nur am Client herum.

Wir schreiben nun ein HTML Formular, das im Prinzip nur aus zwei Textfeldern - ein Eingabefeld für den HTML Code, und ein zweites für den erstellten ASP Code - besteht. Zur zu implementierenden Script-Logik gibt es nur folgendes zu sagen: im VBScript-Block müssen wir lediglich die Anführungszeichen verdoppeln und am Zeilenanfang jeder Zeile Response.Write samt Anführungszeichen einfügen - so einfach macht man HTML ASP-tauglich.

Bevor wir den Sourcecode besprechen, möchte ich Ihnen vorerst einen Screenshot des Ausgangszustandes präsentieren:

Der Sourcecode

Da das interessante der Script Sourcecode ist, widmen wir uns zuerst diesem:

...
<SCRIPT LANGUAGE="VBScript">

  Sub btnConvert_OnClick

    Dim strText, strNew, Form01, strOut
    Set Form01 = Document.forms("InputForm")
  
   
    strText = Form01.txtText.Value

    strNew = Replace(strText, """","""""")
    
    strNew = Replace(strNew, vbCrlf, """" & vbCrlf & "Response.Write """)
    strOut = "Response.Write """ & strNew & """" 
    Form01.txtOutput.Value = strOut

    MsgBox "Conversion Done!",vbInformation

  End Sub


</SCRIPT>

Zuerst übernehmen wir die Benutzer-Eingabe aus dem Textfeld, welches als <textarea> ausgeführt wurde, und speichern den Inhalt in der String-Variable strText. Danach verdoppeln wir die Anführungszeichen in eventuell vorhandenen HTML-Tags, um Problemen beim Rendern des ASP Codes zu entgehen. Für die Durchführung habe ich die VBScript Funktion Replace verwendet, die standardmäßig wie folgt definiert ist:

Replace(Ausdruck, String1, String2[, Start[, Anzahl[, Vergleichsart]]])

Ausdruck ist der String, der zur Ersetzung herangezogen werden soll. Nach String1 soll gesucht werden und mit String2 ersetzt werden. Optional kann man Start angeben, womit man die Position festlegt, ab der gesucht werden soll.

Ebenfalls optional sind Anzahl und Vergleichsart; Anzahl definiert, wie oft die Stringersetzungen stattfinden sollen und Vergleichsart gibt an, ob der Vergeich auf binärer oder textueller Basis stattfinden soll.

Nachdem der HTML Code konvertiert wurde, schreiben wir das Ergebnis in das Ausgabetextfeld. Der nachfolgende Screenshot zeigt das Resultat basierend auf dem ersten Screenshot, in welchem ich zwecks Demonstration einfachen HTML formatierten Text eingfügt habe. Nach dem Klicken des mit Convert bezeichneten Button erhalten wir die Ausgabe, die der nun folgende Screenshot zeigt:

Widmen wir uns nun noch kurz dem Formular. Der Sourcecode sieht für die gezeigten Screenshots dabei so aus:

...

<body>
<form id="InputForm">
<h2>Convert HTML to ASP</h2>

<table cellpadding="2" cellspacing="2">
  <tr>
     <td>Insert HTML:</td>
  </tr>
  <tr>
     <td>  
        <textarea name="txtText" cols="90" rows="20"></textarea>
     </td>
  </tr>
  <tr>
      <td align="right"><input type="button" Name="btnConvert" value="Convert"></td>
  </tr>
  <tr>
     <td>Output:</td>
  </tr>
  </tr>
  <tr>
     <td>  
        <textarea name="txtOutput" cols="90" rows="20"></textarea>
     </td>
  </tr>
</table>
</form>
</body>   
</html>

Eigentlich nichts aufregendes; sowohl das Eingabefeld, als auch das Ausgabefeld sind eine <textarea> mit den jeweils zugeordneten IDs (name=...).

Die Ausführung der Prozedur btnConvert wird durch einen HTML-Control Button

<input type="button" Name="btnConvert" value="Convert"></td>

erledigt. Da diese Prozedur einen Eventnamen besitzen muß, und die Prozedur bei einem einfachen Click auf die HTML-Control ausgeführt werden soll, verwenden wir hier den _OnClick-Eventnamen.

...
 Sub btnConvert_OnClick
...

Schlußbemerung

Dieser Artikel enthält nur die Grundfunktionalität, was diese Art "Tool" durchführen soll - eben plain HTML-Code in ASP konvertieren. Als "Hausaufgabe" für den Leser habe ich vorbehalten, den Client-Side Code auf Server-Side ASP Code umzubauen - da wir aber VBScript verwendet haben, dürfte dies kein Problem darstellen.

Download des Codes

Klicken Sie hier, um den Download zu starten.

Wenn Sie jetzt Fragen haben...

Wenn Sie Fragen rund um die in diesem Artikel vorgestellte Technologie haben, dann schauen Sie einfach bei uns in den Community Foren der deutschen .NET Community vorbei. Die Teilnehmer helfen Ihnen gerne, wenn Sie sich zur im Artikel vorgestellten Technologie weiterbilden möchten.

Haben Sie Fragen die sich direkt auf den Inhalt des Artikels beziehen, dann schreiben Sie dem Autor! Unsere Autoren freuen sich über Feedback zu ihren Artikeln. Ein einfacher Klick auf die Autor kontaktieren Schaltfläche (weiter unten) und schon haben Sie ein für diesen Artikel personalisiertes Anfrageformular.

 

Und zu guter Letzt möchten wir Sie bitten, den Artikel zu bewerten. Damit helfen Sie uns, die Qualität der Artikel zu verbessern - und anderen Lesern bei der Auswahl der Artikel, die sie lesen sollten.

Bewerten Sie diesen Artikel
 Sehr gut   Nicht genügend  
   1  2  3  4  5  
 

  
   Für Ausdruck optimierte Seite

©2000-2006 AspHeute.com
Alle Rechte vorbehalten. Der Inhalt dieser Seiten ist urheberrechtlich geschützt.
Eine Übernahme von Texten (auch nur auszugsweise) oder Graphiken bedarf unserer schriftlichen Zustimmung.