abonnement Unibet Coolblue Bitvavo
pi_23834033
Ik heb het volgende script om een veld op extentie te controleren:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script type="text/javascript">
function validate()
{
toegestaan = new Array("mid","jpg","gif")

bestandsnaam = document.upload.upload.value
extentie = bestandsnaam.substr(bestandsnaam.length-3,3)
validate = 1
for (i = 0; i < toegestaan.length; i++){
   if(extentie != toegestaan[i]){
      validate = 0
   }
}

if (validate == 0)
   alert("Deze extentie(" + extentie + ") is niet bruikbaar voor mobiele telefoons.")
   return false

}
</script>

Het wordt aangeroepen door:
onsubmit="return validate()" in de <form>

Het script werkt op zich wel. Maar na de 2e keer drukken op de knop valideerd ie niet meer en submit ie dus meteen. Hoe kan ik dit oplossen?
pi_23836991
validate() returnt altijd false
en extensie is met een s
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_23837298
quote:
Op woensdag 8 december 2004 18:13 schreef SuperRembo het volgende:
validate() returnt altijd false
en extensie is met een s
Nee hoor. Als ik bijv een .mid file pakt dan submit ie gewoon. Bij een .exe krijg ik een error. Maar als je bijv 2x op de button klikt dan submit ie altijd
Test het anders maar. Zie sig voor link.
pi_23838254
Ja hoor. validate() returnt altijd false. De versie die je nu online hebt staan roept validate() alleen nooit aan.

Maar ALS je de functie validate() een keer aanroept dan bestaat ie daarna niet meer. validate is dan namelijk 0 of 1. Week typed scipttalen, wat zijn ze toch leuk
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_23842363
edit: accolade vergeten in regel 19

[ Bericht 82% gewijzigd door Da_Koen op 08-12-2004 23:40:24 ]
pi_23843810
Ook ff een (newbie) vraagje: waarom worden javascript functies vaak opgeroepen met
<a href= javascript: void(null); Onclick=javascript: hier_de_functie(parameter);>

Waarom niet gewoon met <a href=javascript: hier_de_functie();> ?
pi_23845118
quote:
Op woensdag 8 december 2004 22:10 schreef Da_Koen het volgende:
Hoe kan ik het nou oplossen?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<html>
<head>
<script type="text/javascript">

function validate() {
   var toegestaan = new Array("mid","jpg","gif");

   var bestandsnaam = document.getElementById('upload').value;
   var parts = bestandsnaam.split('.');
   var extensie = parts[parts.length-1];

   var isValid = false;

   for (var i = 0; i < toegestaan.length; i++) {
         if (extensie == toegestaan[i]) {
            isValid = true;
            break;
         }
   }

   if (!isValid) {
      alert("Deze extensie(" + extensie 
         + ") is niet bruikbaar voor mobiele telefoons.");
   }

   return isValid;
}

</script>
</head>
<body>
<form enctype="multipart/form-data" method="post">
   <input type="file" name="upload" id="upload"><br>
   <input type="submit" value="uploaden maar!" 
      onclick="return validate()">
</form>
</body>
</html>

Er stonden geen accolades bij de laatste if, zodat de functie altijd false returnde.
De functie validate veranderde zichzelf in 0 of 1, en kon daardoor dus maar 1x aangeroepen worden.
document.upload.upload.value werkt niet in Firefox. Vervangen door document.getElementById().
Ik heb de controle omgedraaid, de extensie is niet toegestaan, tenzij hij voorkomt in de lijst toegestane extensies.

Je moet op de server natuurlijk ook nog controleren of het allemaal wel klopt.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_23942985
ik heb 2 variabelen in javascript, namelijk screen.width en screen.height en deze wil ik in 2 php variabelen x en y zetten, hoe krijg ik dit voor elkaar??
pi_23943128
Ah zo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
if (isset($_GET['width']) AND isset($_GET['height'])) {
  // output the geometry variables
  echo "Screen width is: ". $_GET['width'] ."<br />\n";
  echo "Screen height is: ". $_GET['height'] ."<br />\n";
} else {
  // pass the geometry variables
  // (preserve the original query string
  //  -- post variables will need to handled differently)

  echo "<script language='javascript'>\n";
  echo "  location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
           . "&width=\" + screen.width + \"&height=\" + screen.height;\n";
  echo "</script>\n";
  exit();
}
?> 


Jammer dat t niet anders kan...
pi_23999068
Nog maar een keer een vraagje want daar is dit topic voor.

1
2
3
4
5
6
7
8
function check(form){
   if(form.naam.value != '' && form.bericht.value != ''){
      form.submit();
   }
   else{
   alert('Je hebt niet alles goed ingevuld');
   }
}


Hier hoort een form bij, er moet gecontroleerd worden of 2 velden zijn ingevuld, als dat zo is moet hij het form submitten. Alleen dat doet hij niet, er komt alleen "Error on page" in de statusbalk te staan.... iemand enig idee wat ik fout doe?
pi_23999302
Ik weet niet wat dat is met mij maar iedere keer zit ik uren met een probleem en dan post ik het hier en binnen 2 minuten heb ik het zelf opgelost..... Er zat ergens anders iets fout in mn script..
  FOK!-Schrikkelbaas dinsdag 28 december 2004 @ 19:28:58 #38
1972 Swetsenegger
Egocentrische Narcist
pi_24260153
1
2
3
function timer() {
  setTimeout("slideLeft()", 3000);
}


Heel simpele functie, alleen wil ik dat hij bij een onmouseover onderbroken wordt.
Hoe doe ik dat?
  FOK!-Schrikkelbaas dinsdag 28 december 2004 @ 20:55:05 #39
1972 Swetsenegger
Egocentrische Narcist
pi_24262136
Ik ben een stap verder:
1
2
3
4
var idle;
function timer() {
idle=setTimeout("slideLeft()", 3000);
}


<div onmouseout="timer();" onmouseover="cleartimeout(idle);">

Dit geeft 'idle' is undefined Maar dat snap ik niet. Ik heb idle toch buiten de functie gedefinieerd?
pi_24262613
Ik krijg de melding 'Object wordt verwacht'. In dit geval kent ie 'cleartimeout' niet, aangezien het 'clearTimeout' is.
Met een hoofdletter T dus
  FOK!-Schrikkelbaas dinsdag 28 december 2004 @ 21:29:44 #41
1972 Swetsenegger
Egocentrische Narcist
pi_24263021
quote:
Op dinsdag 28 december 2004 21:12 schreef _Jeffrey_ het volgende:
Ik krijg de melding 'Object wordt verwacht'. In dit geval kent ie 'cleartimeout' niet, aangezien het 'clearTimeout' is.
Met een hoofdletter T dus
eh nee hoor...., in xhtml mogen er geen hoofdletters in tags, etc meer.
onMouseOver is dus ook gewoon onmouseover en functioneert allemaal prima.

object expected krijg je wel wanneer je hier en daar een quotje teveel of te weinig hebt
  FOK!-Schrikkelbaas dinsdag 28 december 2004 @ 21:37:37 #42
1972 Swetsenegger
Egocentrische Narcist
pi_24263198
Ok, ik ben een enorme lul.

Mijn scriptje werkt fantastisch op 'algemeen.php'... ware het niet dat ik al de hele avond op 'index.php' het resultaat aan het bekijken ben
pi_24263435
quote:
Op dinsdag 28 december 2004 21:29 schreef Swetsenegger het volgende:

[..]

eh nee hoor...., in xhtml mogen er geen hoofdletters in tags, etc meer.
onMouseOver is dus ook gewoon onmouseover en functioneert allemaal prima.
Javascript != XHTML
cleartimeout zal echt niet werken. clearTimeout wel.

Daarbij zijn event-handlers in (X)HTML iets anders dan in javascript.
In javascript moeten event-handlers altijd lower-case geschreven worden (een uitzondering in JS).
objectReferentie.onmouseover = function(){ alert('test'); }
werkt dus wel, maar dit niet:
objectReferentie.onMouseover = function(){ alert('test'); }
  FOK!-Schrikkelbaas dinsdag 28 december 2004 @ 21:59:45 #44
1972 Swetsenegger
Egocentrische Narcist
pi_24263781
quote:
Op dinsdag 28 december 2004 21:46 schreef _Jeffrey_ het volgende:


cleartimeout zal echt niet werken. clearTimeout wel.
Het werkt fantastisch

-edit- nope je hebt gelijk
Omdat ik op de verkeerde page zat te kijken heb ik het ongeveer 300 keer veranderd, de code is nu

1
2
3
4
5
6
7
8
<script type="text/javascript">
var idle;
function timer() {
idle=setTimeout("slideLeft()", 750);
}

</script>
<div onmouseout="timer();" onmouseover="clearTimeout(idle);">
  FOK!-Schrikkelbaas donderdag 30 december 2004 @ 17:02:01 #45
1972 Swetsenegger
Egocentrische Narcist
pi_24300884
Ik heb een script welke net als php's GET info uit de url haalt en wel dat wat achter de ? staat:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
function getValue(varname)
{
  // First, we load the URL into a variable
  var url = window.location.href;

  // Next, split the url by the ?
  var qparts = url.split("?");

  // Check that there is a querystring, return "" if not
  if (qparts.length == 0)
  {
  var niets='uk.txt';
  return niets;
  }

  // Then find the querystring, everything after the ?
  var query = qparts[1];

  // Split the query string into variables (separates by &s)
  var vars = query.split("&");

  // Initialize the value with "" as default
  var value = "";

  // Iterate through vars, checking each one for varname
  for (i=0;i<vars.length;i++)
  {
    // Split the variable by =, which splits name and value
    var parts = vars[i].split("=");

    // Check if the correct variable
    if (parts[0] == varname)
    {
      // Load value into variable
      value = parts[1];

      // End the loop
      break;
    }
  }

  // Convert escape codes
  value = unescape(value);

  // Return the value
  return value;
}

var file = getValue("link");


Maar dit gedeelte

1
2
3
4
5
6
7
8
9
  // Next, split the url by the ?
  var qparts = url.split("?");

  // Check that there is a querystring, return "" if not
  if (qparts.length == 0)
  {
  var niets='uk.txt';
  return niets;
  }


Werkt niet.
Dit zou dus bij en url ZONDER get info 'uk.txt' terug moeten geven, maar dat gebeurt niet.
Waar ga ik fout?
pi_24302172
'foo'.split('?').length geeft 1

Verder geeft window.location.search meteen de seach string. Die begint alleen wel met een '?', die moet je er zelf afknippen.

[ Bericht 22% gewijzigd door SuperRembo op 30-12-2004 18:30:06 ]
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  FOK!-Schrikkelbaas donderdag 30 december 2004 @ 18:57:16 #47
1972 Swetsenegger
Egocentrische Narcist
pi_24302815
quote:
Op donderdag 30 december 2004 18:24 schreef SuperRembo het volgende:
'foo'.split('?').length geeft 1

Verder geeft window.location.search meteen de seach string. Die begint alleen wel met een '?', die moet je er zelf afknippen.
Maar in dit geval staat er dus helemaal geen ? in de url...

dus 'index.php?taal=uk.txt' werkt prima, maar bij index.php verwacht ik dus 'uk.txt' terug en dat gebeurt dus niet.

Aangezien in het laatste geval er niet te splitten valt op ? zou logischerwijs qpart==0 toch waar zijn?
pi_24302960
Nee. Als je 'foo' split op '?' dan krijg je een array met 1 element, namelijk 'foo'.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  FOK!-Schrikkelbaas donderdag 30 december 2004 @ 19:35:53 #49
1972 Swetsenegger
Egocentrische Narcist
pi_24303597
quote:
Op donderdag 30 december 2004 19:05 schreef SuperRembo het volgende:
Nee. Als je 'foo' split op '?' dan krijg je een array met 1 element, namelijk 'foo'.


Ik heb me de tering gezocht
  FOK!-Schrikkelbaas vrijdag 31 december 2004 @ 13:22:30 #50
1972 Swetsenegger
Egocentrische Narcist
pi_24318766
waarom wordt dit in FF 1.0 geen klikbare link (juiste tekst staat er wel, ook onderstreept als zijnde een url, maar klikken gaat niet) en onder IE wel?

1<script type="text/javascript">document.write('<a class="twee" href="status1.htm?link=' + language + '" target="iframe">' + (showText(0)) +'</a>')</script>
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')