Toon posts:

Javascript probleem bij veldcontrole

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben een veldcontrole aan het maken voor een pagina maar ik snap er niets van de veldafhandeling werkt de eerste keer goed (na een refresh van de pagina) maar daarna niet meer.

Ik roep op deze manier de functie aan:
code:
1
 <form method="Post" onSubmit="return Invoercontrole()" name="bibliotheek_invoeren">


En dan roep ik deze functie aan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script language="JavaScript">
<!--
function Invoercontrole()

{
var correct

if (document.bibliotheek_invoeren.Titel.value == "") {correct = false; (document.getElementById("fout").style.visibility = "visible")};
 else if (document.bibliotheek_invoeren.Titel.value == "not null") {correct = true; (document.getElementById("fout").style.visibility = "hidden")};

if (document.bibliotheek_invoeren.Auteur.value == "") {correct = false; (document.getElementById("fout1").style.visibility = "visible")};
 else if (document.bibliotheek_invoeren.Auteur.value == "not null") {correct = true; (document.getElementById("fout1").style.visibility = "hidden")};
  
return correct
}

//-->


Het lijkt iets te zijn met een waarde die vastgehouden wordt want na een refresh doet ie het dus wel goed maar naar een paar keer proberen worden de images niet meer visible of hidden gemaakt

[ Voor 10% gewijzigd door Verwijderd op 04-03-2005 14:28 ]


Verwijderd

Wat gaat er fout? Zou je je code tags netjes willen afsluiten zodat we het makkelijker kunnen lezen? ;)
Heb je ook nog online een voorbeeld?

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
is het wel slim om zoiets met javascript te controleren? Aangezien het zo heel makkelijk te omzeilen is. Velden controle kan je beter serverside doen.

Verwijderd

Topicstarter
zirus schreef op vrijdag 04 maart 2005 @ 14:28:
is het wel slim om zoiets met javascript te controleren? Aangezien het zo heel makkelijk te omzeilen is. Velden controle kan je beter serverside doen.
Maakt in dit geval niet uit, het type gebruiker is niet van dien aard dat ze dit zouden willen omzeilen.
Ik heb overigens geen on-line voorbeeld

Verwijderd

zirus schreef op vrijdag 04 maart 2005 @ 14:28:
is het wel slim om zoiets met javascript te controleren? Aangezien het zo heel makkelijk te omzeilen is. Velden controle kan je beter serverside doen.
Controle moet zowel aan de client-side, als aan de server-side :)
Verwijderd schreef op vrijdag 04 maart 2005 @ 14:29:
[...]
Maakt in dit geval niet uit, het type gebruiker is niet van dien aard dat ze dit zouden willen omzeilen.
Ik heb overigens geen on-line voorbeeld
Voor de tweede keer: wat gaat er concreet mis?
Bovendien snap ik je stijl van syntax gebruiken niet helemaal. puntkomma na een sluit accolade. Boogjes om instructies die overbodig zijn. Lekker 1-regelig programmeren...
Als je ons dus vertelt wat er nou fout gaat... dan kunnen we de oplossing misschien geven. Vertel wat je wil en vertel wat hij doet en wat je verwacht dat hij doet.

[ Voor 118% gewijzigd door Verwijderd op 04-03-2005 14:33 ]


  • Arnout
  • Registratie: December 2000
  • Laatst online: 06-05 08:39
Leg eens uit wat je met het 2e if statement wilt bereiken? Moet daar echt letterlijk "not null" in de textbox staan? Lijkt me niet.

Verwijderd

Topicstarter
Arnout schreef op vrijdag 04 maart 2005 @ 14:32:
Leg eens uit wat je met het 2e if statement wilt bereiken? Moet daar echt letterlijk "not null" in de textbox staan? Lijkt me niet.
Hmm, inderdaad. Het gaat erom dat er iets in het veld staat. kortom niet leeg

  • Arnout
  • Registratie: December 2000
  • Laatst online: 06-05 08:39
Verwijderd schreef op vrijdag 04 maart 2005 @ 14:33:
[...]


Hmm, inderdaad. Het gaat erom dat er iets in het veld staat. kortom niet leeg
Dan moet je geen 2e if doen.

if veld == "" { // hier is het veld leeg // }
else
{ // veld is hier dus niet leeg // }
end if

[ Voor 3% gewijzigd door Arnout op 04-03-2005 14:37 ]


Verwijderd

Vind je het heel raar dat hij het niet doet? :)
Je vergelijkt de waarde met een string. Ik zou aanraden om eens wat basic tutorials te lezen, of een goed boek door te spitten. Ga eens na wat ==, =, !=, <, > allemaal inhoudt en wat je er mee kan. Als iets niet leeg moet zijn dan kan je natuurlijk simpelweg doen:

code:
1
2
var woei = "blurp";
alert("Is woei not empty?\n" + (woei != ""));

[ Voor 7% gewijzigd door Verwijderd op 04-03-2005 14:38 ]


Verwijderd

Topicstarter
thanks. Slotje

Verwijderd

Even een formulier zoals ik hem heb.

<script language="JavaScript">
<!--
function formCheck(formobj){
//1) Veldnaam
var fieldRequired = Array("veldnaam1,veldnaam2");
//2) Tekst van veldnaam
var fieldDescription = Array("Tekst veldnaam1,tekst veldnaam2");
//3) Boodschap voor niet correct invullen
var alertMsg = "Vul a.u.b. de volgende velden in:\n";

var l_Msg = alertMsg.length;

for (var i = 0; i < fieldRequired.length; i++){
var obj = formobj.elements[fieldRequired[i]];
if (obj){
switch(obj.type){
case "select-one":
if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
case "select-multiple":
if (obj.selectedIndex == -1){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
case "text":
case "textarea":
if (obj.value == "" || obj.value == null){
alertMsg += " - " + fieldDescription[i] + "\n";
}
break;
default:
if (obj.value == "" || obj.value == null){
alertMsg += " - " + fieldDescription[i] + "\n";
}
}
}
}

if (alertMsg.length == l_Msg){
return true;
}else{
alert(alertMsg);
return false;
}
}
//-->
</script>

<form name="formcheck" onsubmit="return formCheck(this)" method="post" action="*.cgi">
Werk zelf met cgiemail. http://web.mit.edu/wwwdev/cgiemail/

Greetz ID2020
Pagina: 1