Hej, jag undrar om någon kan hjälpa mig med hur översätta nedanstående javascript till asp-kod? Ändra >Ändra Hej, ursäkta jag var otydlig - menar att javascriptet ska översättas till VBScript. Hej och tack för så fantastiskt snabb och kompetent hjälp :-)Översätta funktion från javascript till asp-kod
<script>
function WWRTEwordTidy(doc){
//Delete all SPAN tags
doc = doc.replace(/<\/?SPAN[^>]*>/gi, '')
//Delete all FONT tags
.replace(/<\/?FONT[^>]*>/gi, '')
//Delete Class attributes
.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, '<$1$3')
//Delete Style attributes
.replace(/<(\w[^>]*) style='([^']*)'([^>]*)/gi, '<$1$3')
//Delete Lang attributes
.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, '<$1$3')
//Delete XML elements and declarations
.replace(/<\\?\?xml[^>]*>/gi, '')
//Delete Tags with XML namespace declarations: <o:p></o:p>
.replace(/<\/?\w+:[^>]*>/gi, '')
//Delete the
.replace(/ /, ' ')
//Delete the MARGIN: 0cm 0cm 0pt; IE puts in when pasting from Word
.replace(/MARGIN: 0cm 0cm 0pt;/gi, '')
//Clean up tags
.replace(/<B [^>]*>/gi,'<b>')
.replace(/<I [^>]*>/gi,'<i>')
.replace(/<LI [^>]*>/gi,'<li>')
.replace(/<UL [^>]*>/gi,'<ul>')
//Replace outdated tags
.replace(/<B>/gi,'<strong>')
.replace(/<\/B>/gi,'</strong>')
.replace(/<I>/gi,'<em>')
.replace(/<\/I>/gi,'</em>')
//Delete empty tags
.replace(/<strong><\/strong>/gi,'')
.replace(/<strong> <\/strong>/gi,'')
.replace(/<em><\/em>/gi,'')
.replace(/<em> <\/em>/gi,'')
//Replace <P> with <DIV>
.replace(/<P/gi, '<div')
.replace(/<\/P>/gi, '</div>');
return doc;
}
</script>
Sv: Översätta funktion från javascript till asp-kod
<script> och </script>
till
<% och %>
Eller menar du att översätta till VBScript?Sv:Översätta funktion från javascript till asp-kod
><script> och </script>
>till
><% och %>
Usch å fy!
<% är "renderingstaggar", de ska inte innehålla några funktioner å sådant skräp
<script> är precis tvärtom, de ska inte innehålla saker som inte ligger i funktioner.
Följdaktligen ska
<script>
ändras till
<script language="javascript" runat="server">
(tror inte asp 3 förstår standarden med type="text/javascript" utan förstår endast language, om det gäller asp.net så går det här inte utan att göra om till samma språk som resten av sidan)Sv:Översätta funktion från javascript till asp-kod
Jag har users som envisas med att klistra in text från Word i en webeditor. Jag försöker därför skapa en funktion som strippar bort alla divs, spans etc. som Word genererar. Har hittat en funktion (se nedan) men den strippar bort allt som är mellan < och > - men jag vill kunna behålla viss formatering från editorn samt länkar och bilder.
Håller också på att kolla på reg.expressions på:
http://www.regexlib.com - men jag får inte grepp om hur reg.expressions fungerar :-)
MVH / Anette
Function StripHTML(asHTML)
Dim loRegExp ' Regular Expression Object
' Create built In Regular Expression object
Set loRegExp = New RegExp
' Set the pattern To look For HTML tags
loRegExp.Pattern = "<[^>]*>"
' Return the original String stripped of HTML
StripHTML = loRegExp.Replace(asHTML, "")
' Release object from memory
Set loRegExp = Nothing
End function
Sv: Översätta funktion från javascript till asp-kod
//Delete all SPAN tags
doc = doc.replace(/<\/?SPAN[^>]*>/gi, '')
//Delete all FONT tags
.replace(/<\/?FONT[^>]*>/gi, '')
blir
<code>With New RegExp
.Global = True
.IgnoreCase = True
' Delete all SPAN tags
.Pattern = "</?SPAN[^>]*"
doc = .Replace(doc, "")
' Delete all FONT tags
.Pattern = "</?FONT[^>]*>"
doc = .Replace(doc, "")
End With</code>
Skillnaden här är att VBScript-koden återanvänder RegExp-objektet, medan Javascript-koden skapar ett nytt objekt för varje ersättning. De flaggor, "gi", som står efter mönstret i Javascriptet motsvaras av Global och IgnoreCase.
Sv:Översätta funktion från javascript till asp-kod
Funktionen blir alltså något åt det här hållet (har testat lite snabbt)
Dim myString, newString
myString = "<span>Hej och hå<br></span><font color=red><br>Hej</font><div style=""color: green""><br>Hej igen</div>"
newString = wordTidy(myString)
response.write(myString)
Function wordTidy(doc)
Set loRegExp = New RegExp
With loRegExp
.Global = True
.IgnoreCase = True
' Delete all SPAN tags
.Pattern = "</?SPAN[^>]*>"
doc = .Replace(doc, "")
' doc = doc.replace(/<\/?SPAN[^>]*>/gi, '')
' Delete all SPAN tags
.Pattern = "</?DIV[^>]*>"
doc = .Replace(doc, "")
' Delete all FONT tags
.Pattern = "</?FONT[^>]*>"
doc = .Replace(doc, "")
End With
wordTidy = doc
Set loRegExp = Nothing
End Function