Element aus 2. Formular abfragen

Sprint

Erfahrenes Mitglied
Hallo zusammen,

ich hab hier ein wahrscheinlich lächerlich einfaches Problem, komm aber mit meine rudimentären JS Kenntnissen nicht dahinter.
Es geht um eine Seite, auf der zwei Formulare nebeneinander existieren. In dem einen werden neue Aufträge eingetragen, in dem anderen werden alte gesucht. Jetzt passiert es manchmal, daß jemand die Daten für einen neuen Auftrag eingibt, aber den Suchbutton anklickt, wodurch dann natürlich alles weg ist.

Ich möchte nun, daß beim anklicken des Suchbuttons überprüft wird, ob ein Feld im anderen Formular befüllt ist. Wenn ja, soll ein Confirm angezeigt werden. Mit dem Button wird eine function aufgerufen, was auch gemacht wird. Die function selbst sieht dann so aus:

HTML:
<script type="text/javascript">
function pruefwarnung(){
	if (document.getElementById("firmenname").value != ""){
		var answer = confirm("bla bla bla");
		if (answer){
			return true;
		}else{
			return false;
		}
	}
}
</script>

Ich habe jetzt das Problem, daß zum einen das Feld aus dem anderen Formular nicht abgefragt wird, zum anderen (wenn ich die Abfrage raus nehme) das Confirm immer das Formular absendet, egal was ausgewählt wird.

Kann mir da bitte mal jemand auf die Sprünge helfen?

Danke im Voraus,
Sprint
 
Das ist das Suchformular (gekürzt)

HTML:
<form id="suche" action="pmain.php" method="get" style="font-size:12px;">
	<fieldset>
		<label class="label" for="anzzeitraum">Anzeigezeitraum</label> 
		<select id="anzzeitraum" name="anzzeitraum" size="1" onChange="sprung(this.form)">
		</select><br />
		<label class="label" for="suchfeld">Suchbegriff</label> 
		<input type="text" name="suchfeld" size="19"> <br />
		<label class="label kf3" for="von">Zeitraum (von bis TT.MM.JJJJ)</label> 
		<input type="text" name="von" size="9" maxlength="10" style="width:95px;">
		<input type="text" name="bis" value="" size="9" maxlength="10" style="width:95px;"><br />
		<input type="submit" class="button white small" value="Prüfung suchen" onclick="pruefwarnung();" />
	</fieldset>
</form>

und das ist die Neuanlage (noch mehr gekürzt)

HTML:
<form id="neuprf" action="pmain.php" method="post" enctype="multipart/form-data" name="neuepruefung">
	<fieldset>
		<label class="label" for="firmenname">zu prüfende Firma*: <a href="#" onmouseover="Tip('text')" onmouseout="UnTip('')" class="infoi">?</a></label> 
		<input type="text" name="firmenname" value="<?php echo $firmenname; ?>" size="24"><br />
		<input type="submit" class="button blue small" value="Prüfung beauftragen" />
	</fieldset>
</form>

Reicht dir das so?
 
Du musst beim Senden der Formulare die Funktion aufrufen und dann TRUE oder FALSE zurückliefern.

Hier mal ein Beispiel wie es aber geht:

Javascript:
<script type="text/javascript">
function pruefwarnung(form){
if (form == 1){
	if (document.getElementById("text2").value != ""){
		var answer = confirm("Formular 1 wird gesendet obwohl Formular 2 gefüllt wurde.");
	}
} else if (form == 2){
	if (document.getElementById("text1").value != ""){
		var answer = confirm("Formular 2 wird gesendet obwohl Formular 1 gefüllt wurde.");
	}
}

if (answer) {
	return true;
} else {
	return false;
}
}
</script>

HTML:
<form name="form1" action="" method="post" onsubmit="return pruefwarnung(1);">
	<input type="text" id="text1" name="text1" value="" size="20" />
	<br />
	<input type="submit" name="sub1" value="Save" />
</form>
<p></p>
<form name="form2" action="" method="post" onsubmit="return pruefwarnung(2);">
	<input type="text" id="text2" name="text2" value="" size="20" />
	<br />
	<input type="submit" name="sub2" value="Save" />
</form>
 
probier es doch mal mit einem button
Code:
<button id="bla">Klick Mich</button>
eigentlich bewirkt das das das formular nicht abgeschickt wird aber ein jquary event passiert
damit sich falls nichts leer wahr auch alles leert (ich denke das willst du dan ganz am ende)
dieser
Code:
$('#dasFormElement').val("");
natürlich für jedes FormElement
Schön wenn ich helfen konte :D :D :D :D
 
Die Lösung von tombe war schon genau das richtige.
Das Problem war, daß die Leute den Sende-Button von einem leeren Formular verwendet haben und damit das ausgefüllte Formular verloren ging. Und da mir schon das normale JS nicht so ganz geheuer ist, werde ich mir Jquery nicht unbedingt antun.
 

Neue Beiträge

Zurück