window.confirm() in eigener Funktion und mit dynamischem Inhalt verwenden

Ceppi

Erfahrenes Mitglied
Hallo,

ich möchte über window.confirm() eine Sicherheitsabfrage gestalten, bevor die Daten meines Formulars abgeschickt werden. So weit so gut, wenn man einfach als onClick oder onSubmit-Ereignis direkt "return confirm('blablabla?')" einträgt.

Geht es nicht aber auch, als Text des Bestätigungsfeldes noch einmal die Formulardaten anzuzeigen, also eine dynamische Bestätigungsmeldung zu generieren? Dafür habe ich mir eine eigene Funktion geschrieben, aber bei allem was nicht explizit in Häkchen gesetzt ist versagt bei mir confirm() und die Formulardaten werden einfach abgeschickt.
Da funktioniert meine nachfolgende Funktion natürlich genauso wenig... :(

Ich dachte an so etwas:
Code:
function formabfrage(form,elements)
				 {
				 var result;
				 var teile = new Array;
				 teile = elements.split(",");
				 
				 for(n=0;n<teile.length;n++)
				 		{
						var ausgabe[n][0] = teile[n];
						ausgabe[n][1] = document.form.teile[n][0].value;
						var text = "Bestätigen Sie die folgenden Angaben"; 
						text = text+ausgabe[n][0]+" : "+ausgabe[n][1]+"\n";
						} 
				 			 
				 var bestaetigung = window.confirm(text);
				 if(bestaetigung==true)
				 	 {
					 result = true;
					 }
				 else
				 	 {
					 result = false;
					 }
				 return result;
				 }

Und das HTML-Formular:

Code:
<form name='m_form' method='get'>
<input type='Text' name='personalnr'> Personalnummer<br>
<input type='Text' name='vorname'> Vorname<br>
<input type='Text' name='nachname'> Nachname<br>
<input type='Submit' value='OK' onclick="return formabfrage(this.name,'personalnr,vorname,nachname')">

Ceppi

EDIT: HTML des Formulars hinzugefügt.
 
Zuletzt bearbeitet:
Hi,

es gibt die Möglichkeit, dass du deinen Textfeldern Id´s gibst (pnr, vn, nn) und dann die
Prüffunktion so umschreibst:

Code:
function formabfrage ()
{
  var pnr = document.getElementById('pnr').value;
  var vname = document.getElementById('vn').value;
  var name = document.getElementById('nn').value;
  
  var txt = "Personalnummer: "+pnr+"\n Vorname: "+vname+"\n Nachname: "+name+"";

  var bestaetigung = window.confirm(txt);

  if(bestaetigung==true)
  {
     return true;
  }
  else
  {
     return false;
  }
 }

... dann zeigt es dir individuell die gerade eingegebenen Daten erst noch mal an. :)
 
Zurück