webForumDet fria alternativet

Enkelt formulär att skicka via mail

JavaScript

6 svar · 660 visningar · startad av rocco80

Medlem sedan dec. 20044 inlägg
Frågan#1

Hej! Jag skulle behöva hjälp med ett enkelt formulär där man ska skriva in namn och e-post. När man klickar på send-knappen ska namnet och e-postadressen komma upp i mail-fönstret som öppnas tänkte jag samt en förifylld mejl-adress(det enda jag lyckades med) , men detta var tydligen svårare än jag hade tänkt mej, är detta möjligt överhuvudtaget undrar jag nu? Vore tacksamt med lite hjälp. Här är lite kod jag har gjort, som ni kan se är jag inte så haj på detta så var lite schyssta.

<script language="Javascript">
<!--
function validera(){
var f = document.forms[ 0 ];

 if( f.elements\[ 0 \].value == "" ){
   alert( "Ange namn" );
   f.elements\[ 0 \].focus();
   return;
   }
 else if(!(isNaN(f.elements\[ 0 \].value ))){
   		alert("Ange med Bokstäver!!");
    f.elements\[ 0 \].focus();
   return;
   
 }
if( f.elements\[ 1 \].value.indexOf(".")\<1 ){
   alert( "Ange e-post" );
   f.elements\[ 1 \].focus();
   return;
   }
 else if(!(isNaN(f.elements\[ 0 \].value ))){
   		alert("Ange e-postadress rätt!!");
    f.elements\[ 1 \].focus();
   return;
   

var mejl = f.elements\[ 0 \].value + "\\n" + f.elements\[ 1 \].value;

//--\>
\</script\>

<FORM method="POST" action="mailto:mejladressen" onClick=" return validera();" enctype="text/plain">

<p>Namn:
<input type="text" name="Namn">
</p>
<p>E-post:
<input type="text" name="E-post">
</p>

<p>
<input type="submit" name="Skicka" value="Skicka anmälan">
<input type="reset" name="Rensa" value="Rensa formuläret ..">
</p>

</FORM>

Medlem sedan sep. 20021 655 inlägg
#2

Var i meddelandet ska Namn och E-post stå?

Medlem sedan dec. 20044 inlägg
#3

Både namnet och e-postadressen ska stå i själva meddelande-rutan, i rubrikrutan ska det helst stå "anmälan" om det är möjligt.

Medlem sedan dec. 20025 483 inlägg
#4
function validera(){
  var f = document.forms[ 0 ];

 if( f.elements[ 0 ].value == "" ){
  alert( "Ange namn" );
  f.elements[ 0 ].focus();
  [b]return false[/b];
 }

 ...

 [b]return true;[/b]
}

<form action="mailto:foo@bar.se[b]?subject=anmälan[/b]" [b]onsubmit[/b]="return validera()"...

Alltså, istället för endast return lägger du till false i dina if-satser.

:)

Medlem sedan dec. 20044 inlägg
#5

Tack för hjälpen! men jag får det fortfarande inte att funka, kan det vara nåt mer fel i min kod?

Medlem sedan dec. 20044 inlägg
#6

Min kod ser nu ut så här:

<script language="Javascript">

function validera(){
var f = document.forms\[ 0 \];

 if( f.elements\[ 0 \].value == "" ){
   alert( "Ange namn" );
   f.elements\[ 0 \].focus();
   return false;
   }
 else if(!(isNaN(f.elements\[ 0 \].value ))){
   		alert("Ange med Bokstäver!!");
    f.elements\[ 0 \].focus();
   return false;
	   
 }
 else if(){
	return true;
  }

if( f.elements\[ 1 \].value.indexOf(".")\<1 ){
   alert( "Ange e-post" );
f.elements\[ 1 \].focus();
   return false;
   }
 else if(!(isNaN(f.elements\[ 0 \].value ))){
   		alert("Ange e-postadress rätt!!");
    f.elements\[ 1 \].focus();
   return false;
	   
 }
   else if(){
	return true;
  }

   
 }
var mejl = f.elements\[ 0 \].value + "\\n" + f.elements\[ 1 \].value;

\</script\>

(HTML kod)

<form action="iwannabesomebody@hotmail.com subject="anmälan" onSubmit="return validera()" enctype="text/plain">

<p>Namn:
<input type="text" name="Namn">
</p>
<p>E-post:
<input type="text" name="E-post">
</p>

<p>
<input type="submit" name="Skicka" value="Skicka anmälan">
<input type="reset" name="Rensa" value="Rensa formuläret ..">
</p>

</FORM>

Medlem sedan jan. 2005713 inlägg
#7

Tjena!

Jo det är några små fel jag kan hitta:

så här ska det se ut i form taggen:

<form action="[B]mailto:iwannabesomebody@hotmail.com?subject=anmälan[/B]" onSubmit="return validera()" enctype="text/plain">
386 ms totalt · 3 externa anrop · v20260731065814-full.f363f448
121 ms — deklarationer (db)
130 ms — hämta statistik (db)
132 ms — hämta tråd, inlägg och bilagor (db)