abonnement Unibet Coolblue Bitvavo
  FOK!-Schrikkelbaas zaterdag 26 augustus 2006 @ 16:55:35 #151
1972 Swetsenegger
Egocentrische Narcist
pi_41198490
Hoi,

Ik probeer de inhoud van een textarea in een cookie te proppen.
Dat gaat ookprima, behalve newlines. De tekst tot aan de eerste newline staat in het cookie, alle tekst daarachter niet.

1
2
3
4
5
6
7
8
9
<html>
<head></head>
<body>
  <form>
    <textarea name="remark" cols="45" rows="7"></textarea>
    <input type="button" id="bestellen" value="Bestellen" onClick="document,cookie='remark='+form.remark.value;document.write(form.remark.value);" />
  </form>
</body>
</html>

De output van document.write is wel correct. Tenminsten, in de source zie ik de newlines staan.

Kan ik in een cookie geen newlines opslaan?

-edit opgelost
1onClick="document.cookie='remark='+escape(form.remark.value);" />


[ Bericht 14% gewijzigd door Swetsenegger op 26-08-2006 18:51:46 ]
pi_41204617
Je kan in een cookie zover ik weet inderdaad geen newlines opslaan.

Ik vond deze website die wat PHP en Javascript functies naast elkaar gooit (implode en explode bijvoorbeeld). Misschien dat je daar wat mee kunt.
  FOK!-Schrikkelbaas zaterdag 26 augustus 2006 @ 21:08:14 #153
1972 Swetsenegger
Egocentrische Narcist
pi_41205460
quote:
Op zaterdag 26 augustus 2006 20:37 schreef fokME2 het volgende:
Je kan in een cookie zover ik weet inderdaad geen newlines opslaan.

Ik vond deze website die wat PHP en Javascript functies naast elkaar gooit (implode en explode bijvoorbeeld). Misschien dat je daar wat mee kunt.
Je kan dus wel newlines opslaan in een cookie. Javasciprt kan blijkbaar geen newlines in vars aan. als je ze escaped werkt het prima
pi_41205723
Hoe escape je die dan mbv javascript? (nog niet veel ervaring met javascript)
  FOK!-Schrikkelbaas zaterdag 26 augustus 2006 @ 21:58:53 #155
1972 Swetsenegger
Egocentrische Narcist
pi_41206812
escape(var) of gewoon backslashen
  zaterdag 26 augustus 2006 @ 22:08:57 #156
85514 ralfie
!Yvan eht nioj
pi_41207068
quote:
Op zaterdag 26 augustus 2006 21:18 schreef fokME2 het volgende:
Hoe escape je die dan mbv javascript? (nog niet veel ervaring met javascript)
1escape ( string )



EDIT: ah, te laat

[ Bericht 9% gewijzigd door ralfie op 26-08-2006 22:15:48 ]
pi_41207769
Enthousiasme .
pi_41391373
wanneer ik dit gebruik:
document.frmChannelOptions.radio1.length
krijg ik netjes terug dat ik 3 radio buttons heb met allemaal de naam radio1, en dus kan ik aan de hand van
document.frmChannelOptions.radio1[2].value
bijvoorbeeld uit de 2e radiobutton de value halen.

maar nu wil ik met een while loopje die radio1 veranderen in radio2, radio3, etc.

dus ik probeer
var radiolala = 'radio' + i;

en vervolgens
document.frmChannelOptions.radiolala.length

maar dat pakt ie niet, waarom niet? Hoe moet ik in zo'n document.frmChannelOptions. een variable stoppen?
als ik alert radiolala doe komt er wel gewoon netjes radio1 of radio2 uit, enz.

bvd.
-
pi_41461416
1
2
var radiolala = 'radio' + i;
document.frmChannelOptions.elements[radiolala].length
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_41468861
Bedankt, weer zo'n simpele oplossing maar je moet het maar net weten of weten hoe ernaar te zoeken..
-
pi_41473493
Het is een feature van javascript: je kunt een property van een object ook aanspreken als een element van een array:

1
2
3
var form = document.forms['myForm'];// array notatie
var form = document.forms.myForm;// property notatie
var form = document.myForm;// verkorte notatie
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_41521786
  • <form name="form2">
  • <input type="radio" name="lbo" value="lbo">LBO<p>
  • <input type="radio" name="mavo" value="mavo">MAVO<p>
  • <input type="radio" name="havo" value="havo">HAVO<p>
  • <input type="radio" name="vwo" value="vwo">VWO<p>
  • <input type="radio" name="mbo" value="mbo">MBO<p>
  • <input type="radio" name="overig" value="overig">Overig<p>
  • </form>


    Ik heb bovenstaande code. Hoe krijg ik hem nou zover dat er maar 1 selecteerbaar is? Ik kan er nu meer selecteren en dat is niet de bedoeling.
  • stupidity has become as common as common sense was before
    pi_41522079
    Allemaal dezelfde name geven. Simpel
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41522526
    quote:
    Op dinsdag 5 september 2006 18:10 schreef SuperRembo het volgende:
    Allemaal dezelfde name geven. Simpel
    Logisch wel ja

    Sorry
    stupidity has become as common as common sense was before
      woensdag 6 september 2006 @ 11:23:07 #165
    25889 Sitethief
    Fulltime Flapdrol
    pi_41543990
    Kort vraagje:

    1
    2
    3
    4
       <!--
          if (location=="http://www.becom.nl/")
               location="http://www.koldijkbv.nl/becom.html"
       //-->


    Dat zorgt ervoor dat je een andere pagina te zien krijgt als dat je refer is ?
    Stroek: Sitethief, die is heel groot en sterk :Y.
    Faat: *zucht* zoals gewoonlijk hoor Sitethief weer in de bocht &gt;:)
    pi_41545919
    window.location=

    maar dan klopt het
    pi_41652155
    Ik moet van een formulier controleren of een aantal velden is ingevuld. Nu heb ik de volgende code:

    function controleer(){
    // controleer of de gebruiker een waarde heeft ingevoerd
    if (document.form1.naam.value == ''){
    //nee
    alert('Vul alle verplichte velden in aub');
    return false
    }
    else{
    popup();
    }
    }

    Dit is de controle op het eerste veld. Als ik nu meer velden wil controleren moet ik volgens mij iets krijgen van:
    if (document.form1.naam.value == '' || document.form1.voorletters.value = ''){

    Alleen als ik het cursieve deel toevoeg gaat het fout en krijg ik foutmeldingen.
    Wat doe ik fout?
    stupidity has become as common as common sense was before
      zaterdag 9 september 2006 @ 18:26:38 #168
    85514 ralfie
    !Yvan eht nioj
    pi_41652834
    dubbele = teken gebruiken, geen enkel (== vergelijken, = toewijzen van variabele)
    pi_41658359
    quote:
    Op zaterdag 9 september 2006 18:26 schreef ralfie het volgende:
    dubbele = teken gebruiken, geen enkel (== vergelijken, = toewijzen van variabele)
    Dat had ik moeten zien ja
    thx
    stupidity has become as common as common sense was before
    pi_41658721
    quote:
    <select name="landen">
    <option selected>Kies uw land
    <option value="Australie">Australie
    <option value="Belgie">Belgie
    <option value="Canada">Canada
    <option value="Denemarken">Denemarken
    <option value="Duitsland">Duitsland
    <option value="Engeland">Engeland
    <option value="Frankrijk">Frankrijk
    <option value="Luxemburg">Luxemburg
    <option value="Nederland">Nederland
    <option value="Nieuw-Zeeland">Nieuw-Zeeland
    </select>
    Hoe kan ik hierbij in een functie controleren of er iets is geselecteerd, en er dus niet de standaard waarde nog staat?

    Ik heb nu:
    quote:
    function land(){
    // controleer of de gebruiker een waarde heeft ingevoerd
    if (document.form1.land.value == true){
    //nee
    alert('Vul alle verplichte velden in aub');
    return false;
    }
    }
    maar dat is duidelijk niet goed.
    stupidity has become as common as common sense was before
    pi_41669837
    1
    2
    3
    4
    5
    <select name="landen" id="landen">
    if(document.getElementById('landen').selectedIndex=='0')
    {
    //Something
    }
    pi_41670149
    quote:
    Op zondag 10 september 2006 11:39 schreef Darkomen het volgende:

    [ code verwijderd ]
    Thx,

    [ Bericht 21% gewijzigd door marcb1974 op 10-09-2006 22:30:13 ]
    stupidity has become as common as common sense was before
      zondag 10 september 2006 @ 12:02:43 #173
    2738 Knut
    Loyal Dog
    pi_41670421
    Ik ben bezig met een stukje js die een textarea aanmaakt in een bepaalde div. Dat werkt allemaal goed maar nu wil ik dus kijken of de textarea al bestaat. Als hij niet bestaat een nieuwe aanmaken en anders negeren.
    1
    2
    3
    obj=document.getElementById('textarea'+ reactId);
        alert(typeof(obj));    
        if (typeof(obj)!='undefined'){

    Dit zou (Volgens mij) moeten werken maar ik krijg altijd "object" uit de alert...
    [20:25] [Knut] Een vrouw met een kerst fetish...
    [20:26] [Knut] Niet zo letterlijk dat ik haar met baard om moet HOHOHOEN
    [20:26] [Knut] maar je snapt het idee wel.
    pi_41690441
    Waarom typeof 'object' geeft snap ik niet helemaal. Het is wel een object, maar zonder property's.
    Wat wel gewoon werkt is dit:

    1
    2
    3
    4
    var obj = document.getElementById('textarea'+ reactId);
    if (!obj) {
       // create textarea
    }



    (Hier gaat nog iets mis met de code tag styling, maar dan alleen in edit preview mode)

    [ Bericht 4% gewijzigd door SuperRembo op 10-09-2006 23:46:52 ]
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41811684
    ik zit met een dufprobleem :{.
    Ik gebruik de waarde van een textarea om door te geven naar een phpfile via een ajaxcall, alleen verdwijnt het teken '+' als sneeuw voor de zon. Iemand een idee om het op te lossen?

    js:
    1
    2
    3
    4
    var editText = encodeURIComponent(document.getElementById(newobjId).value);

    # in onderstaande functie is het derde argument de post string voor het xmlhttp request
    ahahCall('url', objId, 'action=editReact&reactId='+reactId+'&reactArea='+ editText, 'returnText');

    In php doe ik het volgende:
    1
    2
    3
    <?php
    $_POST
    ["reactArea"]= urldecode($_POST["reactArea"]);
    ?>
    pi_41815614
    Je doet in PHP wel een urldecode(), maar je hebt de data niet geurlencode. In javascript kan dat met encodeURIComponent . Die functie bestaat trouwens niet in oudere versies van IE (versie 5 en lager als ik het goed heb). Soms wordt hier de escape() functie gebruikt, maar die gebruikt een andere encoding.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41816405
    quote:
    Op donderdag 14 september 2006 21:41 schreef SuperRembo het volgende:
    Je doet in PHP wel een urldecode(), maar je hebt de data niet geurlencode. In javascript kan dat met encodeURIComponent . Die functie bestaat trouwens niet in oudere versies van IE (versie 5 en lager als ik het goed heb). Soms wordt hier de escape() functie gebruikt, maar die gebruikt een andere encoding.
    *kuch* die functie staat er wel .
    pi_41816738
    ai, ik ben blind

    Bij nader inzien is de urldecode() in php gewoon overbodig. Dat doet php zelf al bij het omzetten van de request naar de $_POST en $_GET array's.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41816875
    dat was hem .
    pi_41885244
    ben ik weer met vast een simpele vraag:
    ik heb een dropdownlist waar 4 waardes in staan met de volgende value's :
    AT, FG, P, C
    voor elk van deze value is ook een gelijknamige DIV beschikbaar

    nu kan ik d.m.v. de volgende code:
    1<select name="add_type" onchange="document.getElementById(this.value).style.display = 'Block';document.getElementById(this.value).style.visibility = 'visible'">

    netjes de bijbehorende div zichtbaar maken maar ik wil dat hij dan ook de andere div's die zichtbaar zouden zijn ook sluit...

    ik heb het zelf ooit op deze manier opgelost in een ander script:
    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
    function cloack(waarde)
    {
     if(waarde == "yes")
        {
          document.getElementById('layer1').style.display = 'None';
          document.getElementById('layer2').style.visibility = 'visible';
          document.getElementById('layer2').style.display = 'Block';
          document.getElementById('command').style.display = 'None';
       }
     else if(waarde == "no")
        {
          document.getElementById('layer2').style.display = 'None';
          document.getElementById('layer1').style.visibility = 'visible';
          document.getElementById('layer1').style.display = 'Block';
          document.getElementById('command').style.display = 'None';
       }
     else
        {
          document.getElementById('layer2').style.visibility = 'hidden';
          document.getElementById('layer2').style.display = 'None';
          document.getElementById('layer1').style.visibility = 'hidden';
          document.getElementById('layer1').style.display = 'None';
          document.getElementById('command').style.display = 'None';
       }
    }


    maar ik mag aannemen dat het simpeler moet kunnen?
    pi_41935369
    Het heeft in ieder geval geen zin om iets wat je niet laat zien (display none) ook nog eens te verbergen (visibility hidden). Het makkelijkst is om een lijstje met id's te maken waarvan je er altijd maar 1 tegelijk laat zien.

    1
    2
    3
    4
    5
    6
    7
    var divs = ['AT', 'FG', 'P', 'C'];

    function showDiv(id) {
       for (var i = 0; i < divs.length; i++) {
          document.getElementById(divs[i]).style.display = (divs[i] == id ? 'block' : 'none');
       }
    }


    Je zou die divs ook allemaal in een andere div kunnen zetten. Dan kan je door de divs heen lopen zonder dat je de id's in een lijstje hoeft te zetten.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41949125
    1
    2
    3
    4
    5
    6
    7
    <input type="checkbox" name="allowed[]" value="2">
    <input type="checkbox" name="allowed[]" value="2">
    <input type="checkbox" name="allowed[]" value="2">
          <input class="button_140" type="button" value="Toevoegen"
             onclick="javascript:
                if (!document.new_page.allowed[].checked){ popupalert('allowed'); }
                else { this.form.submit(); }">


    Dit is een stukje van mijn code. Dit staat in form met name new_page.

    Ik wil graag dat hij een melding geeft als geen van de allowed checked is.. het aantal allowed is variabel. Hoe kan ik dit het beste aanpakken?
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_41953488
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function check_boxes(field)
    {
    var non_checked='0';
    for (i = 0; i < field.length; i++)
       if(field[i].checked = false)
     { var non_checked = '1';
     }
    }
    if(non_checked)
    {
    alert ('je hebt niks geselecteerd');
    }
    }

    onClick="check_boxes(document.new_page.allowed[])">


    Zoiets, niet gechecked trouwens
    pi_41953846
    Dit gaat natuurlijk niet werken:
    1document.new_page.allowed[].checked


    1var allowed = document.forms['new_page'].elements['allowed[]'];

    Hiermee krijg je een array met al je allowed[] checkboxen. Daar moet je dan even doorheen loopen om te kijken of er een checked is.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41954635
    tenks met de combinatie kom ik in de goede richting. rest gaat wel lukken!

    [edit]
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
       function check_boxes(){
          var non_checked2 = document.forms['new_page'].elements['allowed[]'];      
          for (i = 0; i < non_checked2.length; i++){
             if(non_checked2[i].checked == false){
                var non_checked = '1';
             }
             else {
                return true;
             }
          }
          return false;
       }


    dit is hem geworden. werkt goed

    [edit2]
    1
    2
    3
    4
    5
    6
    7
    8
    9
       function check_boxes(){
          var non_checked2 = document.forms['new_page'].elements['allowed[]'];      
          for (i = 0; i < non_checked2.length; i++){
             if(non_checked2[i].checked == true){
                return true;
             }
          }
          return false;
       }


    en zo istie zonder de dingen die dr niet in hoeven

    [ Bericht 55% gewijzigd door Desdinova op 19-09-2006 16:46:33 ]
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_41954871
    Edit: zie dat je zelf al wat hebt
    pi_41958131
    " == true" is natuurlijk overbodig.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_41970599
    Hoe zorg ik ervoor dat als ik in een dropdown menu een bepaalde optie selecteer (bijvoorbeeld: "Anders, namelijk:") dat er dan een eerder disabled textfield enabled wordt.

    Als je dan weer een andere optie kiest dan moet ie weer disabled worden.

    Ik heb nu dit, maar hij enabled niet meer nadat hij disabled is..

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <script type="text/JavaScript">
    <!--
    function disableField(targ,selObj,restore)
    {
       if (selObj != 1)
       {
          document.form1.emailaddress.disabled=true;
       }
       else
       {
          document.form1.emailaddress.disabled=false;
       }
    }
    //-->
    </script>

        <select name="select" onchange="disableField('parent',this,0)">
          <option value="1">Zelf</option>
          <option value="0">Iedereen</option>
          <option value="0" selected="selected">Abonnees</option>
        </select>
        <input type="text" name="emailaddress"/>
    pi_41974194
    quote:
    Op woensdag 20 september 2006 00:11 schreef Siegfried het volgende:
    Hoe zorg ik ervoor dat als ik in een dropdown menu een bepaalde optie selecteer (bijvoorbeeld: "Anders, namelijk:") dat er dan een eerder disabled textfield enabled wordt.

    Als je dan weer een andere optie kiest dan moet ie weer disabled worden.

    Ik heb nu dit, maar hij enabled niet meer nadat hij disabled is..
    [ code verwijderd ]
    Je moet de waarde van de dropdown meegeven aan je disableFields() functie, en op basis daarvan gaan togglen.
      woensdag 20 september 2006 @ 08:54:40 #190
    12880 CraZaay
    prettig gestoord
    pi_41974519
    Probeer eens iets als this.value mee te sturen naar je method, ipv alleen this.
    pi_41984803
    1
    2
    3
    function disableField(el) {
       document.forms['form1'].elements['emailaddress'].disabled = (el.value == '1');
    }


    En dan aanroepen met onchange="disableField(this)"
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_42007794
    Ik wil em eigenlijk graag aanroepen met de naam van het textfield, die ik dan als variable kan gebruiken binnen de functie.. Maar dat krijg ik maar niet werkend:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    function disableField(field)
    {
          document.form1.+field.value+.disabled=true;
    }

    function enableField(field)
    {
          document.form1.+field.value+.disabled=true;
    }


    1
    2
    3
    4
    5
    6
    7
    8
    9
    <p>Verzend-adres: 
        <select name="select">
          <option onclick="javascript:disableField(sender-adress)">info@domein.nl</option>
          <option onclick="javascript:disableField(sender-adress)">noreply@domein.nl</option>
          <option onclick="javascript:disableField(sender-adress)">nieuwsbrief@domein.nl</option>
          <option onclick="javascript:enableField(sender-adress)">Anders..</option>
        </select>
        <input type="text" name="sender-address"/>
      </p>


    Op deze manier moet het toch ook kunnen? Vast niet met de code die ik geschreven heb, maar ik ben dan ook nog niet zo thuis in Javascript..
    pi_42007924
    .value moet zoiezo weg want disabled is geen value
    verder kunnen de plusjes ook weg want . is al plus

    denk ik
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42008044
    plus dat je op een option geen onClick kan doen.

    Je moet de value doorgeven in de onclick functie. Pas in je javascript ga je diezelfde value vergelijken en op basis daarvan ga je togglen.

    [ Bericht 63% gewijzigd door #ANONIEM op 21-09-2006 09:56:13 ]
    pi_42008066
    Nou, ik had het eerder werkend met onClick.
    Maar dat was slechts voor 1 textfiedl. Nu wilde ik hem herbruikbaar maken..
    pi_42008078
    quote:
    Op donderdag 21 september 2006 09:56 schreef Siegfried het volgende:
    Nou, ik had het eerder werkend met onClick.
    Maar dat was slechts voor 1 textfiedl. Nu wilde ik hem herbruikbaar maken..
    Ja, en dat kan met de code van SuperRembo!
    pi_42008148
    quote:
    Op donderdag 21 september 2006 09:57 schreef Scorpie het volgende:

    [..]

    Ja, en dat kan met de code van SuperRembo!
    Hoe dan?
    Want het form en element staan er vast in..

    Hoe maak ik dat variabel?
    pi_42009957
    je zou onchange kunnen gebruiken in je select, met als value this.value. moet je wel je options een value meegeven
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42010094
    quote:
    Op donderdag 21 september 2006 10:01 schreef Siegfried het volgende:

    [..]

    Hoe dan?
    Want het form en element staan er vast in..

    Hoe maak ik dat variabel?
    element kan je meegeven, form kan je vast ook wel wat mee verzinnen, mits je maar google gebruikt...
    pi_42010539
    quote:
    Op donderdag 21 september 2006 11:23 schreef Scorpie het volgende:

    [..]

    element kan je meegeven, form kan je vast ook wel wat mee verzinnen, mits je maar google gebruikt...
    Denk niet dat ik niet google en niet zelf probeer, maar als je niet waar op te zoeken of wat te proberen dan vind je bar weinig kan ik je vertellen
    pi_42011485
    quote:
    Op donderdag 21 september 2006 11:40 schreef Siegfried het volgende:

    [..]

    Denk niet dat ik niet google en niet zelf probeer, maar als je niet waar op te zoeken of wat te proberen dan vind je bar weinig kan ik je vertellen
    http://www.google.nl/search?hl=nl&q=javascript+disable+field&meta=

    Google; Javascript disable fields.

    Duizenden hits.
    pi_42013137
    quote:
    Op donderdag 21 september 2006 12:15 schreef Scorpie het volgende:

    [..]

    http://www.google.nl/search?hl=nl&q=javascript+disable+field&meta=

    Google; Javascript disable fields.

    Duizenden hits.
    das niet echt een relevante search he hoeveel items zou je af moeten gaan om te vinden wat hij zoekt? en je kan wel op elke vraag gaan roepen dat ze moeten googlen. vooral in het begin is het beter om mensen met wat extra uitleg te helpen zodat ze weten wat ze aan het doen zijn ipv zomaar scripts overnemen van een voorbeeld, dan hebben ze de volgende keer hetzelfde probleem. nofi
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42015994
    quote:
    Op donderdag 21 september 2006 12:15 schreef Scorpie het volgende:

    [..]

    http://www.google.nl/search?hl=nl&q=javascript+disable+field&meta=

    Google; Javascript disable fields.

    Duizenden hits.
    Hoe ik velden moet disablen weet ik wel, maar hoe ik dit dynamisch krijg; dat was de vraag.

    @Desdinova: Thanks, zo denk ik er ook over.
    Op andere gebieden ben ik ook niet te beroerd om mensen te helpen.
    pi_42016666
    *Zucht* Nou vooruit dan maar

    Even wat code gejat van mijn werk:

    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
    /**
     * disableFields is used to disable the form fields.
     * example: checkThis(this, 'fieldName',resetValue)
     *
     * @param thisField = the Object that calls the function, for reference.
     * @param fieldNames String defining the field that needs to be disabled
     * @param reset Boolean indicating wether or not the fieldName value should be set before disabling.
     * @param defaultValue value to which the fieldname should be set before disabling.
     * @author Scorpie
     */
    function disableFields(thisField,fieldNames,reset,defaultValue,formName,index)
    {
      // split fieldNames into an array for further processing
       var fieldNames_array = fieldNames.split(",");

      if(thisField.checked==true)
      {
       for(i=0;i<fieldNames_array.length;i++){
       
           // this method is used so that in the future we can easily extend it with other field types for reuse.
          if(reset == true){
           if(document.getElementById(fieldNames_array[i]).getAttribute("type") == "select-one"){
                
             // default value to which the option select box should point at when disabling. 
             // -1 is default, indicating that it will jump back to its original value.
           document.getElementsByName(fieldNames_array[i])[index].selectedIndex = -1;
           document.getElementsByName(fieldNames_array[i])[index].setAttribute("value","");
           }
          }
        document.getElementsByName(fieldNames_array[i])[index].disabled = true;
        }
      } else {
         for(i=0;i<fieldNames_array.length;i++){
          document.getElementsByName(fieldNames_array[i])[index].disabled = false;
          document.getElementsByName(fieldNames_array[i])[index].setAttribute("value","");
       }
      }
    }


    en als aanroep bijvoorbeeld:

    disableFields(this,'type1,type2',true,'-1','type3',"+index+")";

    Dit is de wat uitgebreidere versie waarin je meerdere velden kan disablen met een comma separated string te gebruiken.

    [ Bericht 1% gewijzigd door WyriHaximus op 07-04-2010 10:23:44 ]
    pi_42018278
    ben trots op je scorpie
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42018454
    quote:
    Op donderdag 21 september 2006 16:25 schreef Desdinova het volgende:
    ben trots op je scorpie
    pi_42022126
    1
    2
    document.getElementsByName(fieldNames_array[i])[index].selectedIndex = -1;
    document.getElementsByName(fieldNames_array[i])[index].setAttribute("value","");

    Dit is niet bepaald optimaal. getElementsByName is blijkbaar een user defined function, daar zal ook aardig wat overhead in zitten. Deze functie wordt twee keer aangeroepen met dezelfde parameter, dat betekend dat er een keer onnodig door de DOM wordt gezocht.
    Ook vreemd dat setAttribute wordt gebruikt om de value te zetten, waarom zou je dat niet gewoon via de value property doen?

    Geen lekker scriptje.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_42022294
    quote:
    Op donderdag 21 september 2006 18:32 schreef SuperRembo het volgende:

    [ code verwijderd ]

    Dit is niet bepaald optimaal. getElementsByName is blijkbaar een user defined function, daar zal ook aardig wat overhead in zitten. Deze functie wordt twee keer aangeroepen met dezelfde parameter, dat betekend dat er een keer onnodig door de DOM wordt gezocht.
    Ook vreemd dat setAttribute wordt gebruikt om de value te zetten, waarom zou je dat niet gewoon via de value property doen?

    Geen lekker scriptje.
    getElementsByName is GEEN user defined function, maar gewoon onderdeel van Javascript.

    http://msdn.microsoft.com(...)etelementsbyname.asp

    getElementsByName is dus niks anders dan getElementByName, maar dan met het verschil dat er meerdere objecten worden teruggegeven bij de aanroep, dit omdat wij op onze pagina`s meerdere selectboxen (in dit geval ) gebruiken met dezelfde naam.

    Het klopt als je zegt dat er twee keer een call wordt gedaan naar deze functie, aangezien je twee attributen van deze elementen wil zetten: het attribuut "disabled' en het attribuut 'selectedIndex'. Volgens mij kan dit niet anders, alhoewel ik het mis kan hebben.


    Daarnaast geef je wel een mooie opmerking met "geen lekker scriptje", maar een alternatief posten doe je niet?

    [ Bericht 8% gewijzigd door #ANONIEM op 21-09-2006 18:40:42 ]
    pi_42022328
    @ Scorpie: Thanks! Ik ga eens kijken of ik het aan de praat krijg

    @ SuperRembo: Maar hoe krijg ik mijn enkel regelig scriptje dan werkend, want dat zou toch moeten kunnen neem ik aan?
    pi_42030283
    quote:
    Op donderdag 21 september 2006 18:38 schreef Scorpie het volgende:
    getElementsByName is GEEN user defined function, maar gewoon onderdeel van Javascript.
    Ah, foutje van mij. Maar waarom wordt dan alleen het element met die ene index gedisabled? Vaag.
    quote:
    Het klopt als je zegt dat er twee keer een call wordt gedaan naar deze functie, aangezien je twee attributen van deze elementen wil zetten: het attribuut "disabled' en het attribuut 'selectedIndex'. Volgens mij kan dit niet anders, alhoewel ik het mis kan hebben.
    Wat dacht je er van om een variabele te gebruiken?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_42038689
    quote:
    Op donderdag 21 september 2006 22:14 schreef SuperRembo het volgende:

    [..]

    Ah, foutje van mij. Maar waarom wordt dan alleen het element met die ene index gedisabled? Vaag.
    [..]

    Wat dacht je er van om een variabele te gebruiken?
    Lieve schat
    Met getElementsById doe je niks anders dan de bewerking op al die objecten toe te passen dus als ik .disabled doe en getElementsById geeft 3 objecten terug, dan voert hij de disabled uit op 3 objecten

    Een variabele zou denk ik niet werken omdat je meerdere objecten dan in 1 var gaat duwen?

    Magoed, ontopic dan maar weer denk?
    pi_42043145
    On topic: er klopt niets van wat je zegt.

    getElementsById bestaat niet, je bedoelt waarschijnlijk getElementsByName.
    Een id hoort in html uniek te zijn, dus getElementById geeft altijd 1 element terug (of null als het element niet bestaat). Een name hoeft niet uniek te zijn, daarom geeft getElementsByName altijd een array terug. Alle elementen in die array in 1 keer op disabled zetten door 1 keer een property te zetten werkt niet.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_42043455
    quote:
    Op vrijdag 22 september 2006 12:00 schreef SuperRembo het volgende:
    On topic: er klopt niets van wat je zegt.

    getElementsById bestaat niet, je bedoelt waarschijnlijk getElementsByName.
    Een id hoort in html uniek te zijn, dus getElementById geeft altijd 1 element terug (of null als het element niet bestaat). Een name hoeft niet uniek te zijn, daarom geeft getElementsByName altijd een array terug. Alle elementen in die array in 1 keer op disabled zetten door 1 keer een property te zetten werkt niet.
    Sorry, het was nog vroeg
    Ik bedoel idd getElementsByName, excuses.

    En idd, hij zet hem niet in 1 keer allemaal op disabled, daarom gebruik ik er ook een loop omheen.

    Was een beetje aan het slapen denk

    Daarnaast zie ik dat het ook met getElementById zou kunnen, maar op dit moment ben ik te lui dat op me werk aan te passen

    [ Bericht 10% gewijzigd door #ANONIEM op 22-09-2006 12:19:30 ]
    pi_42077757
    ik probeer m.b.v. JS een post te doen van een formulier maar om de een of andere vage reden werkt het niet:
    dit is de foutregel:
    1http_request.setRequestHeader("Content-length", parameters.length);

    de foutmelding die ik daar bij krijg is dit:
    quote:
    line: 48
    char: 2
    Error: unknown name
    code: 0
    deze melding krijg ik alleen in IE en FF geeft in de JS console geen fouten weer.
    wie helpt me op weg..?


    de source is hier te vinden
    *Kuch*
    ik zat met de verkeerde menu optie te spelen...

    zelf opgelost

    pi_42090518
    heb nu wel; een echt probleempje:
    dit is me code:
    http://fia181-83.dsl.hccnet.nl/server/test.html

    waarom komt geen van de div's tevoorschijn?
    document.getElementById(P_text) selecteerd toch gewoon p_text?
    pi_42090713
    document.getElementById('P_text')
    Quotes, anders denk hij dat het een variable is, welke dus niet is aangemaakt.

    Ow en onslect werkt daar volgens mij niet, dus doe eens onclick
    pi_42090744
    quote:
    Op zondag 24 september 2006 13:23 schreef Darkomen het volgende:
    document.getElementById('P_text')
    Quotes, anders denk hij dat het een variable is, welke dus niet is aangemaakt.

    Ow en onslect werkt daar volgens mij niet, dus doe eens onclick
    idd thnx
    en onselect deed het idd niet, onclick wel ..

    [ Bericht 5% gewijzigd door mschol op 24-09-2006 13:46:56 ]
    pi_42091018
    mooi
      dinsdag 26 september 2006 @ 12:01:54 #219
    67478 Radjesh
    Dire Straits!
    pi_42137310
    Hoe maak ik het beste rapporten uit java?
    pi_42137534
    quote:
    Op dinsdag 26 september 2006 12:01 schreef Radjesh het volgende:
    Hoe maak ik het beste rapporten uit java?
    N00b Javascript != Java.
    pi_42162046
    Ik zoek een script dat min of meer als Google Maps werkt. Alleen wil ik een custom map gebruiken (van een spel) en mijn eigen punten en routes toevoegen. Liefst zo gebruikersvriendelijk mogelijk. Ik kan niet veel dergelijks vinden na uren zoeken, graag tips
      woensdag 27 september 2006 @ 11:56:24 #222
    67478 Radjesh
    Dire Straits!
    pi_42165460
    quote:
    Op dinsdag 26 september 2006 12:10 schreef Scorpie het volgende:

    [..]

    N00b Javascript != Java.
    Ja weet ik, was verkeerd topic.

    Antwoord me vraag eens Scorpie!
    pi_42198491
    ik heb een scriptje wat de value van een tekstveld vult met de waarde this.style.backgroundColor.. maar deze waarde doet hij in RGB formaat ik zie het liever in HEX.. is dat te specificeren op een bepaalde manier?
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42203093
    quote:
    Op donderdag 28 september 2006 14:10 schreef Desdinova het volgende:
    ik heb een scriptje wat de value van een tekstveld vult met de waarde this.style.backgroundColor.. maar deze waarde doet hij in RGB formaat ik zie het liever in HEX.. is dat te specificeren op een bepaalde manier?
    Als ik goed begrijp wat je bedoelt moet je even googelen op javascript rgb2hex
    Dan krijg je bijvoorbeeld deze pagina of deze.
      zondag 1 oktober 2006 @ 14:54:28 #225
    108558 Messenga
    goeiendag wat een geheel!
    pi_42280604
    verkeerde topic

    [ Bericht 88% gewijzigd door Messenga op 01-10-2006 15:54:58 ]
      zondag 1 oktober 2006 @ 14:59:39 #226
    85514 ralfie
    !Yvan eht nioj
    pi_42280707
    quote:
    Op dinsdag 26 september 2006 12:10 schreef Scorpie het volgende:

    [..]

    N00b Javascript != Java.
    pi_42280973
    quote:
    Op zondag 1 oktober 2006 14:54 schreef Messenga het volgende:
    Zo, hier is de ubern00b van FOK! wat betreft Java weer.
    [Java] voor dummies - Deel 1
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      zondag 1 oktober 2006 @ 15:54:36 #228
    108558 Messenga
    goeiendag wat een geheel!
    pi_42282001
    quote:
    Op zondag 1 oktober 2006 15:10 schreef SuperRembo het volgende:

    [..]

    [Java] voor dummies - Deel 1
    Woeps

    Lijkt allemaal op elkaar. .
    pi_42283277
    quote:
    Op woensdag 27 september 2006 09:38 schreef Nevermind het volgende:
    Ik zoek een script dat min of meer als Google Maps werkt. Alleen wil ik een custom map gebruiken (van een spel) en mijn eigen punten en routes toevoegen. Liefst zo gebruikersvriendelijk mogelijk. Ik kan niet veel dergelijks vinden na uren zoeken, graag tips
    kickje
    pi_42372388
    Meh, zoiets bestaat toch wel?
    pi_42609572
    Vast wel nevermind, maar of het makelijk te vinden is....


    Kan je trouwens de text vanuit een input box op een pagina copieren naar een input box op de pagina in een iframe op die pagina?
      donderdag 12 oktober 2006 @ 15:20:20 #232
    85514 ralfie
    !Yvan eht nioj
    pi_42611524
    1
    2
    3
    4
    5
    6
    //vanuit pagina iets als

    frames['naam van iframe'].document.getElementById('output').value=document.getElementById('input').value

    //vanuit frame
    document.getElementById('output').value=parent.document.getElementById('input').value
    pi_42611590
    Zo simpel
    Nu maar eens kjiken of ik het voor elkaar krijgen, de pagina uit het iframe kan ik niet aanpassen en heeft geen id, maar moet luken
    pi_42634867
    Fout uncaught exception: Geen toestemming om eigenschap HTMLDocument.getElementsByName te lezen
    Fout uncaught exception: Geen toestemming om eigenschap HTMLDocument.getElementsByTagName te lezen

    Euhm, hoe kan ik het nog meer proberen? ik kan het bestand in de iframe zelf niet wijzigen.(remote)
      vrijdag 13 oktober 2006 @ 10:49:37 #235
    85514 ralfie
    !Yvan eht nioj
    pi_42635455
    Nee, dat is beveiligd, zal je niet lukken. Je kan geloof ik wel functies van dat frame aanroepen, dus dan zal je dat via je eigen functies moeten doen
    pi_42636137
    Hoe bedoel je?

    Het veld in het iframe welke gevuld moet worden vanuit de parent heeft de naam mac. 4de input veld in het form.
      vrijdag 13 oktober 2006 @ 12:16:54 #237
    85514 ralfie
    !Yvan eht nioj
    pi_42637867
    De parent pagina en iframe moeten in hetzelfde domein zitten, anders wordt cross-frame scripting geblokkeerd. Zal wel ergens een veiligheidsrisico inzitten, maar dat snap ik niet echt.

    Als je het bestand van het iframe had kunnen wijzigen had je daarin een functie kunnen maken welke je vanuit je parentframe aanroept, volgens mij kan dat wel.
    pi_42638274
    Jammer, dan gaat het dus niet lukken, zou namelijk iets bij mn werk een stukje makelijker maken (makelijker dan de gene die de server beheert 1 klein regeltje javascript te laten toevoegen.)
    Kan je je voorstellen hoe dat hier gaat
    pi_42641476
    is het mogelijk om een window.open in een href="" te zetten zonder dat er gebruik gemaakt hoeft te worden van javascript om de href aktie te cancellen? want nu opent hij de pagina wel, maar gaat hij op de oorspronkelijke pagina ook naar een pagina, met als url de javascript code..
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_42642803
    quote:
    Op vrijdag 13 oktober 2006 14:19 schreef Desdinova het volgende:
    is het mogelijk om een window.open in een href="" te zetten zonder dat er gebruik gemaakt hoeft te worden van javascript om de href aktie te cancellen? want nu opent hij de pagina wel, maar gaat hij op de oorspronkelijke pagina ook naar een pagina, met als url de javascript code..
    target="_new" erbij zetten in de href.
    pi_42650849
    target="_blank" bedoel je.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      vrijdag 13 oktober 2006 @ 22:35:14 #242
    12880 CraZaay
    prettig gestoord
    pi_42657067
    quote:
    Op vrijdag 13 oktober 2006 14:19 schreef Desdinova het volgende:
    is het mogelijk om een window.open in een href="" te zetten zonder dat er gebruik gemaakt hoeft te worden van javascript om de href aktie te cancellen? want nu opent hij de pagina wel, maar gaat hij op de oorspronkelijke pagina ook naar een pagina, met als url de javascript code..
    <a href="javascript:window.open()">klik</a> ?
    pi_42658344
    quote:
    Op vrijdag 13 oktober 2006 22:35 schreef CraZaay het volgende:

    [..]

    <a href="javascript:window.open()">klik</a> ?
    Dat geeft dus precies het probleem waar Desdinova het over had

    Maar als je achter een link geen link stopt maar javascript, gebruik dan gewoon geen link!
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      vrijdag 13 oktober 2006 @ 23:20:13 #244
    12880 CraZaay
    prettig gestoord
    pi_42658585
    quote:
    Op vrijdag 13 oktober 2006 23:13 schreef SuperRembo het volgende:

    [..]

    Dat geeft dus precies het probleem waar Desdinova het over had

    Maar als je achter een link geen link stopt maar javascript, gebruik dan gewoon geen link!
    Je hebt helemaal gelijk.
    pi_42659637
    jaaa maar dr is geen onclick event in te stellen in de editor waar t voor is dus vandaar dat ik me afvroeg of het op een andere manier in de href zou kunnen. tevens moet je target hetzelfde zijn als de naam die je opgeeft in je window.open
    As a rule, I never touch anything more sophisticated and delicate than myself.
      zaterdag 14 oktober 2006 @ 00:02:34 #246
    12880 CraZaay
    prettig gestoord
    pi_42659933
    Wat SuperRembo denk ik bedoelt is dat je er sowieso geen <a> voor zou moeten gebruiken, niet in de href en niet in de onclick

    Waarom heb je precies window.open)( nodig en kan het niet met een normale href?
    pi_42676213
    windowsizes bijvoorbeeld.

    wat raad je dan aan rembo? een span met een onmouseover voor cursor pointer en een onclick? en waarom?
    As a rule, I never touch anything more sophisticated and delicate than myself.
    pi_43062788
    kickje
    Is er in javascript ook een variant van de php's $_SERVER['REQUEST_URI']? REQUEST_URI geeft de pagina weer die er bezocht word, dus als ik deze url aanroep: http://cafs009/sd/dev/test.php?test=blaat dan is $_SERVER['REQUEST_URI']: /sd/dev/test.php?test=blaat. Dat is handig, want ook als ik achter test=blaat #20 neerzet, is de REQUEST_URI nog steeds hetzelfde. Misschien handig om even uit te leggen wat ik precies wil

    In een pagina roep ik een functie aan die een extra stukje (een invoerscherm) aan de htmlpagina toevoegd. Als ik dus de link voor een nieuw invoerscherm aanklik komt dat scherm erbij, en springt de pagina via window.location door naar dat invoerscherm: #newreact. Echter, als ik die link nog een keer aanklik komt er dus achter de url (waar al #newreact in staat), nogmaals #newreact te staan. Ik wil dus eigenlijk dat hij naar REQUEST_URI + #newreact springt. Via php is het lastiger om dit te realiseren omdat de javascript in een apart bestand staat. Dus dan mijn vraag: Kan ik die REQUEST_URI ook in javascript opvragen, of is er een andere methode om dit te doen?
    pi_43062878
    quote:
    Op maandag 30 oktober 2006 12:39 schreef Hmail het volgende:
    kickje
    Is er in javascript ook een variant van de php's $_SERVER['REQUEST_URI']? REQUEST_URI geeft de pagina weer die er bezocht word, dus als ik deze url aanroep: http://cafs009/sd/dev/test.php?test=blaat dan is $_SERVER['REQUEST_URI']: /sd/dev/test.php?test=blaat. Dat is handig, want ook als ik achter test=blaat #20 neerzet, is de REQUEST_URI nog steeds hetzelfde. Misschien handig om even uit te leggen wat ik precies wil

    In een pagina roep ik een functie aan die een extra stukje (een invoerscherm) aan de htmlpagina toevoegd. Als ik dus de link voor een nieuw invoerscherm aanklik komt dat scherm erbij, en springt de pagina via window.location door naar dat invoerscherm: #newreact. Echter, als ik die link nog een keer aanklik komt er dus achter de url (waar al #newreact in staat), nogmaals #newreact te staan. Ik wil dus eigenlijk dat hij naar REQUEST_URI + #newreact springt. Via php is het lastiger om dit te realiseren omdat de javascript in een apart bestand staat. Dus dan mijn vraag: Kan ik die REQUEST_URI ook in javascript opvragen, of is er een andere methode om dit te doen?
    Waarom laat je PHP niet automatisch je javascript code genereren?
    pi_43062906
    quote:
    Op maandag 30 oktober 2006 12:39 schreef Hmail het volgende:
    Via php is het lastiger om dit te realiseren omdat de javascript in een apart bestand staat. Dus dan mijn vraag:
    pi_43062994
    wat is er mis met document.location.href?
    pi_43063126
    Daar staat dus die #newreact nog achter, terwijl dat juist weggelaten moet worden.
    pi_43063144
    quote:
    Op maandag 30 oktober 2006 12:54 schreef Hmail het volgende:
    Daar staat dus die #newreact nog achter, terwijl dat juist weggelaten moet worden.
    Mja. window.location.href.substring(0, window.location.href.indexOf('#'));

    -r-
    pi_43063259
    Ik kende substring niet, dus vandaar dat ik daar nog niet opgekomen was. Maar dit werkt prima, bedankt!
      maandag 30 oktober 2006 @ 15:06:30 #255
    24399 TechXP
    www.biteback.be
    pi_43067341
    Ik ben wat aan het kloten met javascript. Gebruik het niet dagelijks, dus kan nog wel wat foutjes maken.

    Ik heb de volgende code:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    function sendIt() {
       
    //   alert(document.getElementById('frmDoorsturen').elements[0].name + '=' + document.getElementById('frmDoorsturen').elements(0).value);

       str = document.getElementById('frmDoorsturen').elements[0].name + '=' + document.getElementById('frmDoorsturen').elements(0).value + '&';   
       str += document.getElementById('frmDoorsturen').elements[1].name + '=' + document.getElementById('frmDoorsturen').elements(1).value + '&';
       str += document.getElementById('frmDoorsturen').elements[2].name + '=' + document.getElementById('frmDoorsturen').elements(2).value + '&';
       str += document.getElementById('frmDoorsturen').elements[3].name + '=' + document.getElementById('frmDoorsturen').elements(3).value + '&';
       str += document.getElementById('frmDoorsturen').elements[4].name + '=' + document.getElementById('frmDoorsturen').elements(4).value + '&';
       str += document.getElementById('frmDoorsturen').elements[5].name + '=' + document.getElementById('frmDoorsturen').elements(5).value + '&';
       str += document.getElementById('frmDoorsturen').elements[6].name + '=' + document.getElementById('frmDoorsturen').elements(6).value + '&';
       str += document.getElementById('frmDoorsturen').elements[7].name + '=' + document.getElementById('frmDoorsturen').elements(7).value + '&';
       str += document.getElementById('frmDoorsturen').elements[8].name + '=' + document.getElementById('frmDoorsturen').elements(8).value + '&';
       str += document.getElementById('frmDoorsturen').elements[9].name + '=' + document.getElementById('frmDoorsturen').elements(9).value + '&';
       str += document.getElementById('frmDoorsturen').elements[10].name + '=' + document.getElementById('frmDoorsturen').elements(10).value + '&';
       str += 'vid' + '=' + id;

       //alert(str);
       
    }


    Dit werkt perfect in IE. Maar in firefox en opera werkt het niet. Weet iemand waar het aan ligt?
    Naar mijn idee zou het moeten werken.

    thanks,

    Alex
    pi_43067438
    Wat moet het doen dan? Heeft je frm daadwerkelijk een id, of alleen een name?

    probeer eens met
    1
    2
    3
    4
    5
    var str = '';
    var frm = document.forms['formname']; //formname is hetgeen staat in <form name="formname">
    for(var i = 0; i < frm.elements.length; i++) {
      str += frm.elements[i].name + "=" + escape(frm.elements[i].value) + "&";
    }


    -r-
      maandag 30 oktober 2006 @ 15:39:07 #257
    24399 TechXP
    www.biteback.be
    pi_43068437
    Ok.. dat lijkt wel beter te werken. Thanks.
    pi_43072812
    quote:
    Op maandag 30 oktober 2006 15:09 schreef Roönaän het volgende:
    Wat moet het doen dan? Heeft je frm daadwerkelijk een id, of alleen een name?

    probeer eens met
    [ code verwijderd ]

    -r-
    Alleen dan natuurlijk met encodeURIComponent() inplaats van escape().
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_43078042
    Maakt die er geen UTF-8 encoding van? Dat heb je toch niet altijd nodig?
    pi_43083039
    Van het euro-teken maakt escape %u20AC, dat is geen geldige url encoding. encodeURIComponent() maakt er %E2%82%AC. %u20AC snapt php zeker niet, %E2%82%AC zou goed moeten gaan (als je charset e.d. goed hebt staan).

    (IE5.0 kent encodeURIComponent trouwens niet)
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      dinsdag 31 oktober 2006 @ 17:14:41 #261
    3415 Webby
    1 omhoog!
    pi_43107237
    quote:
    Op zaterdag 14 oktober 2006 00:02 schreef CraZaay het volgende:
    Wat SuperRembo denk ik bedoelt is dat je er sowieso geen <a> voor zou moeten gebruiken, niet in de href en niet in de onclick

    Waarom heb je precies window.open)( nodig en kan het niet met een normale href?
    Een a href met correcte link en onclick via bijv document.getElementById().onClick = function () { window.open this.href ... is juist wel zo netjes, voor als er geen js beschikbaar is.
    Game Over :: Anoniem torrents downloaden @ Seedr :: Lees hier waarom
    pi_43369868
    Ik heb hetvolgende script gevonden en aangepast zodat verschillende waardes bij elkaar worden opgeteld:


    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
    <script type="text/JavaScript">
             function startCalc()
             {
               interval = setInterval("calc()",1);
             }
             function calc()
             {
                if (document.getElementById)
                {
                   artikel1Aantal = document.getElementById('TextBoxartikelen1Aantal').value;
                   artikel1Prijs = document.getElementById('TextBoxartikelen1Prijs').value;
                   document.getElementById('TextBoxartikelen1PrijsTotaal').value = (artikel1Aantal * 1) * (artikel1Prijs * 1);

                   artikel2Aantal = document.getElementById('TextBoxartikelen2Aantal').value;
                   artikel2Prijs = document.getElementById('TextBoxartikelen2Prijs').value;
                   document.getElementById('TextBoxartikelen2PrijsTotaal').value = (artikel2Aantal * 1) * (artikel2Prijs * 1);

                   artikel3Aantal = document.getElementById('TextBoxartikelen3Aantal').value;
                   artikel3Prijs = document.getElementById('TextBoxartikelen3Prijs').value;
                   document.getElementById('TextBoxartikelen3PrijsTotaal').value = (artikel3Aantal * 1) * (artikel3Prijs * 1);

                   uren1Aantal = document.getElementById('TextBoxuren1Aantal').value;
                   uren1Prijs = document.getElementById('TextBoxuren1Prijs').value;
                   document.getElementById('TextBoxuren1PrijsTotaal').value = (uren1Aantal * 1) * (uren1Prijs * 1);

                   uren2Aantal = document.getElementById('TextBoxuren2Aantal').value;
                   uren2Prijs = document.getElementById('TextBoxuren2Prijs').value;
                   document.getElementById('TextBoxuren2PrijsTotaal').value = (uren2Aantal * 1) * (uren2Prijs * 1);

                   uren3Aantal = document.getElementById('TextBoxuren3Aantal').value;
                   uren3Prijs = document.getElementById('TextBoxuren3Prijs').value;
                   document.getElementById('TextBoxuren3PrijsTotaal').value = (uren3Aantal * 1) * (uren3Prijs * 1);


                   document.getElementById('TextBoxPrijsTotaal').value = (artikel1Aantal * 1) * (artikel1Prijs * 1) + (artikel2Aantal * 1) * (artikel2Prijs * 1) + (artikel3Aantal * 1) * (artikel3Prijs * 1) + (uren1Aantal * 1) * (uren1Prijs * 1);

                }
             }
             function stopCalc()
             {
               clearInterval(interval);
             }
             </script>


    Het werkt goed, er is alleen een probleem:
    Zodra ik een html pagina maak waarbij 1 van de textboxen niet aanwezig is wil het script niet meer werken.
    Hoe kan ik ervoor zorgen dat er in het script eerst wordt gekeken of een TextBox aanwezig is, en zo niet, het stukje code overgeslagen wordt?
      woensdag 8 november 2006 @ 21:47:45 #263
    85514 ralfie
    !Yvan eht nioj
    pi_43375036
    je kunt de code van elk artikel apart in try/catch statements zetten
    try{
    //code die mss niet werkt
    }
    catch(e){
    //indien een error, wordt dit outgevoerd. Als je dit leeg laat, gaat ie gewoon verder
    }
    pi_43375931
    Een try catch is een lompe "oplossing". Je kan gewoon controleren of een veld bestaat voordat je de value ervan opvraagt. Je zou een functie kunnen maken die de numerieke waarde van een veld geeft, of een standaard waarde als het veld niet bestaat.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function getFieldFloat(id, defaultValue) {
       var field = document.getElementById(id);
       if (field) {
          var value = parseFloat(field.value);
          if (isNaN(value)) {
             return defaultValue;
          } else {
             return value;
          }      
       } else {
          return defaultValue;
       }
    }


    Je kan een soortgelijke functie maken om de waarde in een veld te zetten.

    Net zo lomp is trouwens om elke milliseconde (!!!) die berekening uit te voeren. Zet dan ff wat eventhandlers op de onchange of onkeypress van de velden.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      donderdag 9 november 2006 @ 08:41:39 #265
    693 ChOas
    ** Warning: Choking hazard **
    pi_43384947
    quote:
    Op woensdag 8 november 2006 19:50 schreef Erik het volgende:
    Ik heb hetvolgende script gevonden en aangepast zodat verschillende waardes bij elkaar worden opgeteld:
    [ code verwijderd ]

    Het werkt goed, er is alleen een probleem:
    Zodra ik een html pagina maak waarbij 1 van de textboxen niet aanwezig is wil het script niet meer werken.
    Hoe kan ik ervoor zorgen dat er in het script eerst wordt gekeken of een TextBox aanwezig is, en zo niet, het stukje code overgeslagen wordt?
    Begrijp ik nou goed dat je je klanten zelf de uur en artikelprijs laat invullen ??
    "I contend that we are both atheists. I just believe in one fewer god than you do.
    When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."

    [Stephen Roberts]
    pi_43389931
    quote:
    Op woensdag 8 november 2006 21:47 schreef ralfie het volgende:
    je kunt de code van elk artikel apart in try/catch statements zetten
    try{
    //code die mss niet werkt
    }
    catch(e){
    //indien een error, wordt dit outgevoerd. Als je dit leeg laat, gaat ie gewoon verder
    }
    Bedankt, ik ga het hiermee proberen
    quote:
    Op woensdag 8 november 2006 22:04 schreef SuperRembo het volgende:
    Een try catch is een lompe "oplossing". Je kan gewoon controleren of een veld bestaat voordat je de value ervan opvraagt. Je zou een functie kunnen maken die de numerieke waarde van een veld geeft, of een standaard waarde als het veld niet bestaat.
    [ code verwijderd ]

    Je kan een soortgelijke functie maken om de waarde in een veld te zetten.

    Net zo lomp is trouwens om elke milliseconde (!!!) die berekening uit te voeren. Zet dan ff wat eventhandlers op de onchange of onkeypress van de velden.
    Bedankt voor je tips, dat van die miliseconde ga ik meteen even anders instellen.
    pi_43389946
    quote:
    Op donderdag 9 november 2006 08:41 schreef ChOas het volgende:

    [..]

    Begrijp ik nou goed dat je je klanten zelf de uur en artikelprijs laat invullen ??
    De klant? Hoe kom je hier bij?
      donderdag 9 november 2006 @ 12:10:18 #268
    693 ChOas
    ** Warning: Choking hazard **
    pi_43390305
    quote:
    Op donderdag 9 november 2006 11:58 schreef Erik het volgende:

    [..]

    De klant? Hoe kom je hier bij?
    Sorry, dacht dat het een customer frontend was.
    "I contend that we are both atheists. I just believe in one fewer god than you do.
    When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."

    [Stephen Roberts]
    pi_43395580
    quote:
    Op donderdag 9 november 2006 12:10 schreef ChOas het volgende:

    [..]

    Sorry, dacht dat het een customer frontend was.
    Het is niet de bedoeling dat de klant hier iets van te zien krijgt nee
    pi_43510302
    ik heb een form validation probleem

    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
       if (document.getElementsByName('forwardingtype')){
          var thisarray = document.getElementsByName('forwardingtype');
          if (debug){ alert('thisarray is set'); }
       }
       if (document.getElementsByName('forwardingmanual')){
          var thisinnerarray = document.getElementsByName('forwardingmanual');
          if (debug){ alert('thisinnerarray is set'); }
       }
       alert (typeof(thisarray));
       if (thisarray){
          if (debug){ alert('thisarray is set, commencing check'); }
          for (var i=0; i <= thisarray.length; i++){
             if (debug){ alert('forloop thisarray started'); }
             if (debug){ alert(thisarray.length +' items in array'); }
             
             if (thisarray[i].value == 'manual'){
                if (debug){ alert('thisarray.value = manual'); }
                if (thisinnerarray[i].value == ''){
                   if (debug){ alert('thisinnerarray value = '''); }
                   return false;
                }
             }
             else {
                if (debug){ alert('thisarray.value = select'); }
             }
          }
       }


    forwardingtype is een array, ik krijg de alerts tot en met de x items in array. er staat 0 items in array.. ik doe waarschijnlijk iets heel simpels verkeerd, maar met google kom ik er niet uit

    [ Bericht 3% gewijzigd door Desdinova op 13-11-2006 16:11:50 ]
    As a rule, I never touch anything more sophisticated and delicate than myself.
      maandag 13 november 2006 @ 16:05:14 #271
    130385 HiDiHo
    hdhmedia.online
    pi_43510656
    mis je niet nog een } op het eind?
    (kan aan mij liggen hoor)
    Aan mijn uitspraken kunnen geen rechten ontleend worden
    Uitspraken uit het verleden geven geen garantie voor de toekomst
    pi_43510875
    oh foutje bij het kopieren maar dat is niet het punt..
    As a rule, I never touch anything more sophisticated and delicate than myself.
      maandag 13 november 2006 @ 16:16:22 #273
    130385 HiDiHo
    hdhmedia.online
    pi_43511045


    [ Bericht 52% gewijzigd door HiDiHo op 13-11-2006 16:35:14 ]
    Aan mijn uitspraken kunnen geen rechten ontleend worden
    Uitspraken uit het verleden geven geen garantie voor de toekomst
    pi_43511882
    Het ligt aan de scope van de variable. Als je een variable binnen een if definieerd, dan is hij daar buiten niet bekend.

    1
    2
    3
    4
    5
    6
    7
    var foo = '';
    if (x) {
       foo = 'x';
       var bar = 'y';
    }
    alert(typeof(foo));// geeft 'string'
    alert(typeof(bar));// geeft 'undefined'
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      maandag 20 november 2006 @ 18:02:38 #275
    2738 Knut
    Loyal Dog
    pi_43722762
    1
    2
    3
    4
    5
    6
    7
    8
    function createEditForm(reactId){
      var objId = "react_body" + reactId;
      document.getElementById(objId).innerHTML = '';
      var newobjId = "text" + reactId;
      createNewElement(objId, '', 'textarea', {id: newobjId, rows: '10', cols: '40'}, '');
      ahahCall(baseRef + 'index.php?page=ahahHandler', newobjId, 'action=getReact&reactId='+reactId+'&undosml=1', 'addValue');
      createNewElement(objId, '', 'img', {src:baseRef + 'inc/tpl/sixties/i/edit.gif', alt:'submit', onclick: 'processEditReact(' + reactId + ')' }, '');
    }

    Deze functie levert in IE foutmeldingen op.
    Ik heb geen idee waarom echter.
    Als ik debug via de scriptdebugger krijg ik op deze regel een fout:
    1  createNewElement(objId, '', 'textarea', {id: newobjId, rows: '10', cols: '40'}, '');

    "Object expected"

    Iemand enig idee waar hij een object in verwacht ?
    [20:25] [Knut] Een vrouw met een kerst fetish...
    [20:26] [Knut] Niet zo letterlijk dat ik haar met baard om moet HOHOHOEN
    [20:26] [Knut] maar je snapt het idee wel.
      FOK!-Schrikkelbaas maandag 20 november 2006 @ 18:18:41 #276
    1972 Swetsenegger
    Egocentrische Narcist
    pi_43723047
    quote:
    Op maandag 20 november 2006 18:02 schreef Knut het volgende:

    [ code verwijderd ]

    Deze functie levert in IE foutmeldingen op.
    Ik heb geen idee waarom echter.
    Als ik debug via de scriptdebugger krijg ik op deze regel een fout:
    [ code verwijderd ]

    "Object expected"

    Iemand enig idee waar hij een object in verwacht ?
    bekijk 'm eens in firefox, die geeft veel duidelijkere foutmeldingen mbt javascript
    pi_43723096
    Zou het kunnen dat je aan onclick geen string mag toekennen maar enkel een function of een function ref?
      maandag 20 november 2006 @ 18:21:49 #278
    2738 Knut
    Loyal Dog
    pi_43723120
    quote:
    Op maandag 20 november 2006 18:18 schreef Swetsenegger het volgende:

    [..]

    bekijk 'm eens in firefox, die geeft veel duidelijkere foutmeldingen mbt javascript
    Dat is het nare.
    ff geeft geen js errors.
    [20:25] [Knut] Een vrouw met een kerst fetish...
    [20:26] [Knut] Niet zo letterlijk dat ik haar met baard om moet HOHOHOEN
    [20:26] [Knut] maar je snapt het idee wel.
      maandag 20 november 2006 @ 18:30:48 #279
    2738 Knut
    Loyal Dog
    pi_43723323
    En de noodzaak is nu weg. Ik heb het geheel iets anders opgezet
    [20:25] [Knut] Een vrouw met een kerst fetish...
    [20:26] [Knut] Niet zo letterlijk dat ik haar met baard om moet HOHOHOEN
    [20:26] [Knut] maar je snapt het idee wel.
    pi_43736254
    Ik ben bezig met het maken van een navigatie menu voor bovenaan mijn pagina. Als basis heb ik : deze genomen, en dan de two-level versie.

    Dit alles heb ik gewoon werkend gekregen, maar nu wil ik ipv tekst, afbeeldingen gebruiken. Als ik dit echter doe dan is de afbeelding alleen te zien als ik over de plek ga waar de afbeelding hoort te staan( maar niet te zien is). Ik heb al vanalles geprobeerd, maar het wil maar niet lukken.

    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
    50
    51
    52
    53
    54
    <script type="text/javascript"><!--//--><![CDATA[//><!--

    sfHover = function() {
       var sfEls = document.getElementById("nav").getElementsByTagName("LI");
       for (var i=0; i<sfEls.length; i++) {
          sfEls[i].onmouseover=function() {
             this.className+=" sfhover";
          }
          sfEls[i].onmouseout=function() {
             this.className=this.className.replace(new RegExp(" sfhover\b"), "");
          }
       }
    }
    if (window.attachEvent) window.attachEvent("onload", sfHover);

    //--><!]]></script>

    <style type="text/css">
    <!--
    @import url("file:///C|/Documents and Settings/Roelaano/Bureaublad/klimsite/opmaak.css");
    -->
    </style>
    </head>

    <body>
    <table width="861" bgcolor="#333333">
      <tr>
        <th height="251" colspan="5" scope="col"><img src="file:///C|/Documents and Settings/Roelaano/Bureaublad/klimsite/afbeeldingen/bovenkant.png" width="850" height="249" /></th>
      </tr>
      <tr>
        <td colspan="5"> <div align="center">
          <table width="789">
            <tr>
              <th scope="col">
            
            <ul id="nav">

       <li><a href="#"></a>
          <ul>
             <li><a href="bla"><img src="../../Roelaano/Bureaublad/klimsite/afbeeldingen/buttons/3000ersuit.gif" width="150" height="20" border="0" /></a>
                <ul>
                   <li><a href="#">Echeneis</a></li>
                   <li><a href="#">Phtheirichthys</a></li>
                   <li><a href="#">Remora</a></li>
                   <li><a href="#">Remorina</a></li>
                   <li><a href="#">Rhombochirus</a></li>
                </ul>
             </li>
             <li><a href="#">Tilefishes</a>

    .........
    .....
    .......
    .....


    Dit is het laatste wat ik geprobeerd heb, maar dus niet werkt.

    Wat ik eigenlijk ook nog wil is dat er een andere afbeelding komt, wanneer ik met de muis over de button ga (mouseOver), maar als dit al niet werkt dan wacht ik daar ook nog maar even mee.



    Zo moet het er uiteindelijk uit gaan zien. Ik weet dat jullie geen scriptschrijvers zijn die even een scriptje voor me in elkaar zitten, maar op dit moment kan ik wel een hulp/ tip gebruiken.


    mvg,
    Roel
    pi_43738831
    "Als ik dit echter doe dan is de afbeelding alleen te zien als ik over de plek ga waar de afbeelding hoort te staan( maar niet te zien is).". Je hebt in je voorbeeld html op het hoofd niveau een lege a tag. dan op je eerste niveau een img tag. Je plaatje verschijnt dus pas als je over die lege a tag beweegt idd.
    Game Over :: Anoniem torrents downloaden @ Seedr :: Lees hier waarom
      dinsdag 21 november 2006 @ 09:52:47 #282
    12880 CraZaay
    prettig gestoord
    pi_43740116
    Is het niet veel eenvoudiger om dit met alleen CSS te bouwen?
    pi_43743790
    quote:
    Op dinsdag 21 november 2006 08:35 schreef Webby het volgende:
    "Als ik dit echter doe dan is de afbeelding alleen te zien als ik over de plek ga waar de afbeelding hoort te staan( maar niet te zien is).". Je hebt in je voorbeeld html op het hoofd niveau een lege a tag. dan op je eerste niveau een img tag. Je plaatje verschijnt dus pas als je over die lege a tag beweegt idd.
    Aardig dom dat ik dat zelf niet gezien heb maja, het was al laat .

    Ik heb nu het volgende voor elkaar gekregen: klikkerdeklik

    Het menu klopt nu, maar de buttons worden niet "ingedrukt" als ik er met de muis overheen ga. Dit zal waarschijnlijk wel aan het javascript liggen, en/of gewoon de waardeloze code die ik gebruik Javascript is duidelijk niet mijn sterkste punt. Graag zou ik ook nog de buttons tegen elkaar willen hebben, dus zonder de spaties ertussen.

    alvast bedankt.

    gelukkig kan ik straks weer verder met iets waar ik wel een beetje verstand van heb
    pi_43820574
    Ik heb de volgende HTML code:

    1
    2
    3
    4
    5
    <input type="text" name="aantal[]" onchange="veranderAantal(this.form);" />
    <input type="text" name="aantal[]" onchange="veranderAantal(this.form);" />
    <input type="text" name="aantal[]" onchange="veranderAantal(this.form);" />
    <input type="text" name="aantal[]" onchange="veranderAantal(this.form);" />
    <input type="text" name="aantal[]" onchange="veranderAantal(this.form);" />


    Waarbij het aantal input tags kan verschillen. Hoe kan ik nu in de functie veranderAantal alle aantallen bij elkaar optellen? Het wil mij niet lukken.
    pi_43820725
    Ik heb een vraag over Java.

    Kan ik dat ook hier stellen?
    pi_43820954
    quote:
    Op donderdag 23 november 2006 14:53 schreef MrX1982 het volgende:
    Ik heb een vraag over Java.

    Kan ik dat ook hier stellen?
    Nee, dat kan hier: [Java] voor dummies - Deel 1.
    pi_43821005
    quote:
    Op donderdag 23 november 2006 15:00 schreef HuHu het volgende:
    Nee, dat kan hier: [Java] voor dummies - Deel 1.
    Dan zal ik even een nieuwe thread aanmaken. Bedankt.
    pi_43822877
    quote:
    Op donderdag 23 november 2006 14:48 schreef HuHu het volgende:
    Ik heb de volgende HTML code:
    [ code verwijderd ]

    Waarbij het aantal input tags kan verschillen. Hoe kan ik nu in de functie veranderAantal alle aantallen bij elkaar optellen? Het wil mij niet lukken.
    Wat heb je nu dan?
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
    pi_43826785
    quote:
    Op donderdag 23 november 2006 15:57 schreef SuperRembo het volgende:

    [..]

    Wat heb je nu dan?
    Nu heb ik dit staan:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function veranderAantal (formulier)
    {
      var array_aantal = formulier.aantal;
      var aantal = 0;

      for (var n = 0; n < array_aantal.length; n++)
      {
        aantal += array_aantal[n];
      }

      //Toon het resultaat (slechts voor test)
      alert(aantal);
    }
    pi_43829761
    De naam van de velden is niet "aantal" maar "aantal[]" :)
    Verder moet je de values van de input elementen optellen, niet de elementen zelf. Even converteren naar een integer met parseInt is ook wel handig. Je zou ook nog kunnen controleren of de waarde wel echt een getal is.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function veranderAantal (formulier)
    {
      var array_aantal = formulier.elements['aantal[]'];
      var aantal = 0;

      for (var n = 0; n < array_aantal.length; n++)
      {
        aantal += parseInt(array_aantal[n].value);
      }

      //Toon het resultaat (slechts voor test)
      alert(aantal);
    }
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      vrijdag 8 december 2006 @ 12:20:19 #291
    159067 NTCE
    [Vietnam veteraan]
    pi_44246686
    // CODE STAAT IN PHP TAGS VOOR DE KLEUR AANDUIDING //

    Hey allemaal,

    Ik wil een Javascript Slider maken, met onderstaande code kan ik een DIV (layer) in hoogte resizen.

    1
    2
    3
    4
    5
    function SlideDown(){
    for(i=50; i<500; i++) {
    setTimeout("document.getElementById('layer').style.height='" +  i + "px'", (i+50)*6);
     }
    }



    Echter zoals je kunt zien gaat deze in een vloeiende beweging van 50 pixels naar 500 pixels in hoogte.
    Dit betekend dat hij altijd dezelfde snelheid behoud en dat wil ik niet.

    Wat ik wil is dat de for lus een array gaat doorlopen, voorbeeld:

    1array = array("50, 100, 150, 200, 250, 300, 350, 400, 450, 460, 470, 480, 490, 500");


    Je kunt ook zien dat bij de 450 hij nauwkeuriger wordt, hiermee moet dus de Slider een vertraging krijgen heel snel, naar langzamer en angzamer totdat hij stilstaat.

    Wie kan mij hierbij helpen hoe ik dit moet verwerken?

    SuperRembo heeft vervolgens mij geholpen in dit topic: Javascript Slide trough Array

    Maar dat werkt niet, wie kan mij helpen met deze lastige code?
    long dark curly hair with a smooth face, crystal blue eyes and a stunning body, yep thats my girl.
    pi_44248023
    Aan de mededeling "werkt niet" heb ik niet veel. ALs je hier een vraag stelt dan is het handig als je duidelijker omschrijft wat het probleem is.

    Dit werkt wel.
    1
    2
    3
    4
    5
    6
    function SlideDown() {
       var a = new Array(50, 100, 150, 200, 250, 300, 350, 400, 450, 460, 470, 480, 490, 500);
       for(i = 0; i < a.length; i++) {
          setTimeout("document.getElementById('layer').style.height='" +  a[i] + "px'", (i + 50) * 6);
       }
    }
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      vrijdag 8 december 2006 @ 13:21:12 #293
    159067 NTCE
    [Vietnam veteraan]
    pi_44248651
    quote:
    Op vrijdag 8 december 2006 13:02 schreef SuperRembo het volgende:
    Aan de mededeling "werkt niet" heb ik niet veel. ALs je hier een vraag stelt dan is het handig als je duidelijker omschrijft wat het probleem is.

    Dit werkt wel.
    [ code verwijderd ]
    Dit werkt prima, hij doorloppt de array goed, echter heb ik zelf de fout gemaakt want ik heb de array laten aansluiten op de hoeveelheid pixels die hij uitvoert. Wat ik eigenlijk bedoelde, en wat ik dus verkeerd had uitgelegd, excuus, is dat er eigenlijk dan een vertraging op de timer moet komen.

    Ik had verwacht dat hij alles pixel voor pixel zou uitvoeren, maar hij doet nu 50 en dan de volgende 50 pixels, dus heel haperig.

    Hoe kan ik de array dan uitvoeren op de timer, kan je me daarbij nog helpen?
    long dark curly hair with a smooth face, crystal blue eyes and a stunning body, yep thats my girl.
    pi_44257599
    Als je een klein beetje begrijpt wat de functie doet, dan is dat heel simpel aan te passen.
    Wil iedereen die in telekinese gelooft nu mijn hand op steken?
    | Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
      zaterdag 9 december 2006 @ 13:40:34 #295
    159067 NTCE
    [Vietnam veteraan]
    pi_44274221
    ik heb het idd al, thanks.
    long dark curly hair with a smooth face, crystal blue eyes and a stunning body, yep thats my girl.
    pi_44295335
    Met het volgende script heb ik 2 kleine problemen..

    1. De HTML code (voor output van mijn poll) werkt niet in Internet Explorer
    2. Enters worden niet goed weer gegeven in Internet Explorer (rn)

    voorbeeld op http://dump.bruggema.nl/ubb.html :)

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    <script language="javascript">

    function showPoll(type)
    {

        // init arrays
        pollAnswerID    = new Array();
        pollAnswer      = new Array();

        // poll information
        pollID          = 1;
        pollTitle       = "hello world";
        pollAnswers     = 3;
        pollAnswerID[1] = 1231;
        pollAnswerID[2] = 1211;
        pollAnswerID[3] = 2111;
        pollAnswer[1]   = "Antwoord nummer 1";
        pollAnswer[2]   = "Antwoord nummer 2";
        pollAnswer[3]   = "Antwoord nummer 3";

        // location settings.
        baseUrl     = "http://www.gfxpoll.nl";
        baseUrlVote = baseUrl + "/poll.php?vote=";
        baseUrlGfx  = baseUrl + "/viewgfx.php?id=" + pollID + ".png";
        baseUrlGfxZ = baseUrl + "/viewgfx/" + pollID + ".png";

        enter = "rn";

        
        if (type == "ubb")
        {
            str = "[b]" + pollTitle + "[/b]" + enter;
            for (x = 1; x <= pollAnswers; x++)
            {
                 str += "[*][url=" + baseUrlVote + pollAnswerID[x] + "]" + pollAnswer[x] + "[/url]" + enter;
            }
            str += enter + enter + "[sup]Tussenstand:[/sup]" + enter + enter + "[img]" + baseUrlGfx + "[/img]";
            str += enter + enter + "[sup]Ook een poll maken? klik dan [url=" + baseUrl + "]hier[/url]";
        }

        if (type == "ubbsmall")
        {
            str = "[b]" + pollTitle + "[/b]" + enter;
            for (x = 1; x <= pollAnswers; x++)
            {
                 str += "[*][url=" + baseUrlVote + pollAnswerID[x] + "]" + pollAnswer[x] + "[/url]" + enter;
            }
            str += enter + enter + "[sup]Tussenstand:[/sup]" + enter + enter + "[img]" + baseUrlGfxZ + "[/img]";
            str += enter + enter + "[sup]Ook een poll maken? klik dan [url=" + baseUrl + "]hier[/url]";
        }

        if (type == "html")
        {
            str = "<strong>" + pollTitle + "</strong><br /><br />" + enter + enter + "<ul>" + enter;
            for (x = 1; x <= pollAnswers; x++)
            {
                 str += "    <li><a href="" + baseUrlVote + pollAnswerID[x] + "" target="_newWin">" + pollAnswer[x] + "</a></li>" + enter;
            }
            str += enter + enter + "</ul>" + enter + enter + "<small>Tussenstand:</small><br /><br />" + enter + "<img src="" + baseUrlGfx + ""><br /><br />";
            str += enter + enter + "<small>Ook een poll maken? klik dan <a href="" + baseUrl + "" TARGET="_newwin">hier</a></small>";
        }

        str.replace("<", "%3C");
        str.replace(">", "%3E");

        return str;
    }

    function vPoll(type)
    {
         document.getElementById('polltext').innerHTML = showPoll(type);
    }

    </script>

    <table>
    <tr>
        <td><a href="javascript:vPoll('ubb');">UBB Code</a></td>
        <td><a href="javascript:vPoll('ubbsmall');">UBB Small Code</a></td>
        <td><a href="javascript:vPoll('html');">HTML Code</a></td>
    </tr>
    <tr>
        <td colspan=3>Code:</td>
    </tr>
    <tr>
        <td colspan=3><textarea id="polltext" style="width: 400px; height: 200px;">inhoud</textarea></td>
    </tr>
    </table>


    de fout zit um in de 1e regel van de functie vPoll(type) oftewel

    1     document.getElementById('polltext').innerHTML = showPoll(type);


    en dit heb ik geprobeerd op te lossen met

    1
    2
        str.replace("<", "%3C");
        str.replace(">", "%3E");


    maar helaas geen resultaat... heeft iemand een idee? het is alleen bij't linkje "HTML code"
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
      zondag 10 december 2006 @ 10:38:41 #297
    85514 ralfie
    !Yvan eht nioj
    pi_44295597
    probeer ipv textarea.innerHTML textarea.value te setten, heb je ook geen gezeik meer met html karakters te escapen
    pi_44312429
    jah, dat is inderdaad een betere oplossing!

    -edit-
    raar dat je daar zo overheen kijkt, maar goed... alle problemen zijn verdwenen
    The people who lost my respect will never get a capital letter for their name again.
    Like trump...
    pi_44343601
    klein vraagje m.b.t. een functie die ik heb gebouwd:
    bij het onclick event van een knop roep ik de volgende functie aan:
    1
    2
    3
    4
    5
    6
    7
    function AddFile(place,file,button)
    {
    var button = button;
       newWindow = window.open('add.php?path='+place+'&file='+file,"add_file","status=0,menubar=0,height=250,width=100,top=60px,left=100px");
       button.disabled=true;
       newWindow.focus();
    }


    alleen wordt de aanroep knop niet gedisabled.
    als ik een alert van button doe krijg ik wel netjes de button naam terug..
    wat doe ik verkeerd??
    pi_44343674
    quote:
    Op maandag 11 december 2006 23:36 schreef mschol het volgende:
    als ik een alert van button doe krijg ik wel netjes de button naam terug..
    wat doe ik verkeerd??
    Geef je aan de functie alleen de buttonnaam mee, of het buttonobject (evt. opgehaald met iets als document.getElementById)?
    "If you are depressed you shouldn't be in C major!" - Rick Beato
    abonnement Unibet Coolblue Bitvavo
    Forum Opties
    Forumhop:
    Hop naar:
    (afkorting, bv 'KLB')