webForumDet fria alternativet

Formulär skapat i XSL

XML

7 svar · 544 visningar · startad av Pedda

Medlem sedan juni 20006 031 inlägg
Frågan#1

Jag har ett formulär som är skapat i XSL.
Men när jag försöker hämta värdena med Request.Form i ASP.NET så funkar det inte.
Går det att göra formuläret på något annat sätt i XSL så det funkar?

Nu skapar jag alla element liknande detta:

<xsl:element name="input">
<xsl:attribute name="type">hidden</xsl:attribute>
<xsl:attribute name="name">toEmail</xsl:attribute>
<xsl:attribute name="id">param_epost</xsl:attribute>
<xsl:attribute name="value">
<xsl:value-of select="$epost"/>
</xsl:attribute>
</xsl:element>
Medlem sedan juni 200032 967 inlägg
#2

Prova att byta <xsl:element name="input"> till <input> och </xsl:element> till </input>. Jag antar att du transformerar till HTML?

Mvh

Medlem sedan juni 20006 031 inlägg
#3

Glömde skriva att vi kör output som XML.

Medlem sedan mars 20007 896 inlägg
#4

Hur ser formuläret ut? Kanske kan du använda XForms?

Medlem sedan juni 20006 031 inlägg
#5

SPiN skrev:

Hur ser formuläret ut? Kanske kan du använda XForms?

Fick inte xforms att fungera ens med deras exempel när jag gjorde ett snabbtest.

Kan inte posta koden för formuläret, får följande felmeddelande:

wF skrev:

Texten som du har skrivit in är för lång (12577 tecken). Var vänlig och korta ner den till maximalt 10000 tecken.

Medlem sedan juni 200032 967 inlägg
#6

Kan inte posta koden för formuläret, får följande felmeddelande:

Kan du dela upp i två inlägg? :)

Medlem sedan juni 20006 031 inlägg
#7

formuläret innehåller ganska många textboxar mm så jag tar bort lite i mitten

<!-- div med forumlär -->
		<xsl:element name="div">
			<xsl:attribute name="id">detalj_div</xsl:attribute>
			<xsl:attribute name="style">display: none;</xsl:attribute>
			<!-- formulär -->

			<xsl:element name="form">
				<xsl:attribute name="name">mailform</xsl:attribute>
				<xsl:attribute name="method">post</xsl:attribute>
				<xsl:attribute name="action">http://localhost:1225/WebSite1/SendMail.aspx</xsl:attribute>
				<xsl:attribute name="onsubmit">return sendMail(this)</xsl:attribute>
				<xsl:attribute name="enctype">text/plain</xsl:attribute>
				<!-- fält för gömd epost till mottagare -->
				<xsl:element name="input">
					<xsl:attribute name="type">hidden</xsl:attribute>
					<xsl:attribute name="name">toEmail</xsl:attribute>
					<xsl:attribute name="id">param_epost</xsl:attribute>
					<xsl:attribute name="value">
						<xsl:value-of select="$epost"/>
					</xsl:attribute>
				</xsl:element>
				
				<!-- tabellstart -->
				<xsl:element name="table">
					<xsl:attribute name="width">300</xsl:attribute>
					<xsl:attribute name="border">0</xsl:attribute>
					<xsl:attribute name="cellspacing">0</xsl:attribute>
					<xsl:attribute name="cellpadding">3</xsl:attribute>
					<!-- fält för Namn -->
					<xsl:element name="tr">
						<xsl:element name="td">
							<xsl:call-template name="sprakval">
								<xsl:with-param name="sv">Namn:</xsl:with-param>
								<xsl:with-param name="en">Name:</xsl:with-param>
							</xsl:call-template>
						</xsl:element>
						<xsl:element name="td">
							<xsl:element name="input">
								<xsl:attribute name="name">tfName</xsl:attribute>
								<xsl:attribute name="type">text</xsl:attribute>
								<xsl:attribute name="size">30</xsl:attribute>
								<xsl:attribute name="id">namn</xsl:attribute>
							</xsl:element>
						</xsl:element>
					</xsl:element>
					
					.... tagit bort en hel del här ...
				
					<!-- fält för Övrigt -->
					<xsl:element name="tr">
						<xsl:element name="td">
							<xsl:call-template name="sprakval">
								<xsl:with-param name="sv">Övrigt:</xsl:with-param>
								<xsl:with-param name="en">Other:</xsl:with-param>
							</xsl:call-template>
						</xsl:element>
						<xsl:element name="td">
							<xsl:element name="textarea">
								<xsl:attribute name="name">taOvrigt</xsl:attribute>
								<xsl:attribute name="cols">50</xsl:attribute>
								<xsl:attribute name="rows">4</xsl:attribute>
								<xsl:attribute name="id">ovrigt</xsl:attribute>
								<xsl:text></xsl:text>
							</xsl:element>
						</xsl:element>
					</xsl:element>
					<!-- formulär knappar -->
					<xsl:element name="tr">
						<xsl:element name="td"></xsl:element>
						<xsl:element name="td">
							<xsl:element name="input">
								<xsl:attribute name="name">Submit</xsl:attribute>
								<xsl:attribute name="id">skicka_knapp</xsl:attribute>
								<xsl:attribute name="type">submit</xsl:attribute>
								<xsl:attribute name="title">Vänta på att ditt epostmeddelande öppnas och skicka sen.</xsl:attribute>
								<xsl:attribute name="value">
									<xsl:call-template name="sprakval">
										<xsl:with-param name="sv">Skicka</xsl:with-param>
										<xsl:with-param name="en">Send</xsl:with-param>
									</xsl:call-template>
								</xsl:attribute>
							</xsl:element>
							<xsl:element name="input">
								<xsl:attribute name="type">reset</xsl:attribute>
								<xsl:attribute name="name">Reset</xsl:attribute>
								<xsl:attribute name="value">
									<xsl:call-template name="sprakval">
										<xsl:with-param name="sv">Rensa</xsl:with-param>
										<xsl:with-param name="en">Reset</xsl:with-param>
									</xsl:call-template>
								</xsl:attribute>
							</xsl:element>
						</xsl:element>
					</xsl:element>
					
				</xsl:element>
				<!-- slut table -->
			</xsl:element>
			
			<!-- slut form -->
		</xsl:element>
		<!-- slut div -->
Medlem sedan juni 20006 031 inlägg
#8

Nu har jag byggt om så ASP.NET sidan tar emot formuläret och skickar ett mail.
Problemet är bara att den inte klarar å ä ö och sånt ännu.

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)