webForumDet fria alternativet

posta formulär, alert() som jag/nej

4 svar · 296 visningar · startad av tlee

tleeMedlem sedan mars 2001290 inlägg
#1

Hur får jag upp en alert() som sista "Är du säker på att du vill skicka ordern?" samtidigt som man validerar om ett fält är ifyllt?

function CheckField() {

	if(document.formOrder.txtEmail.value=="") {
  	alert("Du måste ange en epostaddress.");
	  return false;
	}
	
	alert('Din order kommer nu skickas');
             // Här skall alerten dyka upp och om man klickar ok skall
             // forumläret postas annars skall den avbryta.

}

Såhär ropar jag på funktionen.

<form method="post" action="send_order.asp" name="formOrder" OnSubmit="return CheckField();">

/t

@ndersMedlem sedan juni 200032 969 inlägg
#2
function CheckField() {

	if(document.formOrder.txtEmail.value=="") {
  	alert("Du måste ange en epostaddress.");
	  return false;
	} else
		return confirm('Din order kommer nu skickas');
}
klementinMedlem sedan aug. 2001117 inlägg
#3

Är själv jättedålig på JavaScript, men jag tror att detta kanske fungerar (har inte provat just denna kod tillsammans med din).

function CheckField() {

	if(document.formOrder.txtEmail.value=="") {
  	alert("Du måste ange en epostaddress.");
	  return false;
	}
	
	if(confirm('Din order kommer nu skickas\nVill du fortsätta?')) {
               return true;
            } else {
               return false;
            }
}

Fast jag tror att Confirm-retunerar True eller False själv så man behöver nog inte ange det, fast jag är inte säker.

tleeMedlem sedan mars 2001290 inlägg
#4

tackar tackar!

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#5

klementin skrev:

Är själv jättedålig på JavaScript, men jag tror att detta kanske fungerar (har inte provat just denna kod tillsammans med din).

function CheckField() {

	if(document.formOrder.txtEmail.value=="") {
  	alert("Du måste ange en epostaddress.");
	  return false;
	}
	
	if(confirm('Din order kommer nu skickas\nVill du fortsätta?')) {
               return true;
            } else {
               return false;
            }
}

Fast jag tror att Confirm-retunerar True eller False själv så man behöver nog inte ange det, fast jag är inte säker.

Precis, helt onödigt med en if-sats där.
Är som att skriva:

if (true)
	return true;
else
	return false;

Räcker att skriva som @nders gjorde.

return confirm("Din order kommer nu skickas\nVill du fortsätta?");

Undrar du över vad något returnerar så kan man kontrollera det med:

alert(confirm("Din order kommer nu skickas\nVill du fortsätta?"));
132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)