Functie uitvoeren vanuit een andere functie form

Status
Niet open voor verdere reacties.

zildjan

Gebruiker
Lid geworden
19 mrt 2010
Berichten
41
hallo

Ik ben nieuw hier, en ik hoop dat ik hier niet lang als 'groentje' blijf maar ook anderen kan helpen na verloop van tijd :)

Mijn vraag:

Ik heb een formulier, werkt perfect ... maar ...

Ik probeer nu validatie te schrijven, en nadat deze validatie achter de rug is, een andere functie uit te voeren. En dit blijkt niet te lukken.


Code:
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>" method="post" name="nieuwdossier1" target="_self" >
  <input type=hidden name=alertType id=alertType value=inline />
  <table width="650" border="0">
    <tr>
      <td width="200">Naam : * </td>
      <td>
        <input name="familienaam" type="text" size="30" value="<?php echo $_POST["familienaam"];?>" class=innerNormal />
      </td>
    </tr>
    <tr>
      <td width="200">Voornaam : *</td>
      <td><input name="voornaam" type="text" size="30" value="<?php echo $_POST["voornaam"];?>" class=innerNormal />
	  </td>
    </tr>
</table>
  <p align="left"><input name="Submit" type="submit" value="Volgende" onClick="check();">
En wat betreft script:
[JS]<script language="javascript" type="text/javascript">

function check(){
if (IsEmpty (nieuwdossier1.familienaam){
return false
alert ("familienaam graag")
} else {
submitFunctie()
}
}

function submitFunctie() {
document.nieuwdossier1.action="nieuw_dossier2.php";
document.nieuwdossier1.submit();
}
</script>[/JS]

Ok, dus, wanneer ik klik op 'volgende' is het de bedoeling dat de functie check wordt uitgevoerd en even nakijkt of familienaam niet leeg is.
Is deze niet leeg, is het de bedoeling dat de submitFunctie wordt uitgevoerd.

Maar, om de een of andere reden lukt dit niet.

Kan iemand helpen?

groetjes
P
 
Laatst bewerkt:
het probleem zit m in je return. Dit is de code, netjes geformat:
[JS]function check(){
if(IsEmpty(nieuwdossier1.familienaam)
{
return false;
alert ("familienaam graag");
}else{
submitFunctie();
}
}[/JS]De alert wordt zowiezo niet uitgevoerd; je returnt eerst false, ofwel: de functie stopt. De alert komt dus nooit aan bod. Als je t omdraait, dus eerst alert, en dan return, klopt t wel.

Nu, wat werkt er precies niet? Want nu hebben we even iets te weinig info om je vraag te beantwoorden. (volledige source, wat doet bv. isEmpty()?)

Daarnaast moet je niet vergeten dingen af te sluiten met een puntcomma; het is niet verplicht, maar wel belangrijk als je foutloze code wilt schrijven.

Ohja, en het is good practice om html elementen via document.getElementById() aan te roepen. document.formnaam is minder net.



:thumb:
 
Laatst bewerkt:
Inderdaad, de alert staat gewoon een regel te laag.

De IsEmpty checkt of er iets is ingegeven of niets.

Mijn excuses, een hele stomme vraag. Bedankt voor de tips!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan