Hirdetés

Új hozzászólás Aktív témák

  • Sk8erPeter

    nagyúr

    válasz PumpkinSeed #5102 üzenetére

    Gondold végig: Te a document.getElementById()-vel lekérsz egy elemet, majd annak próbálod elérni a document tulajdonságát - ennek semmi értelme, nem lesz document tulajdonsága/attribútuma.

    Ha végig akarsz menni az elemeken, akkor több lehetőséged is van, például:
    - document.querySelectorAll segítségével, egy selector felhasználásával megkeresed a vonatkozó elemeket; pl. ha mindegyik checkbox el van látva a fruit-checkbox osztállyal, akkor ez aztán egészen szigorúan csak azokat fogja megtalálni:
    var fruitCheckboxes = document.querySelectorAll('input[type="checkbox"].fruit-checkbox');
    Ez egy NodeListet ad vissza, ezeken végig tudsz menni egy for ciklussal simán.
    Pl.:
    for (var i = 0; i < fruitCheckboxes.length; i++) {
    var currentFruitCheckbox = fruitCheckboxes[i];
    console.log(currentFruitCheckbox.name + ' - is it checked? ', currentFruitCheckbox.checked === true);
    }

    Ilyesmi.
    - ha egy tömbben van összegyűjtve, hogy milyen nevű elemeket keresel (pl. a name attribútuma tartalmazza az elemnek a gyümölcs nevét), és egy adott konténerelemen belül szeretnél csak keresni, és kifejezetten egy elemre, akkor megteheted az Element.querySelector() segítségével, pl.:

    var fruitCheckboxContainer = document.getElementById('fruit-checkbox-container');
    var fruitNamesArray = ['apple', 'orange', 'pear'];

    for (var j = 0; j < fruitNamesArray.length; j++) {
    var currentFruitCheckbox = fruitCheckboxContainer.querySelector('input[name="' + fruitNamesArray[j] + '"]');
    if (currentFruitCheckbox === null) {
    console.log('A checkbox with the name "' + fruitNamesArray[j] + '" does not exist in the fruit checkbox container');
    continue; // go on to the next one
    }

    console.log('is "' + fruitNamesArray[j] + '" checked? ', (currentFruitCheckbox.checked === true));
    }

    - stb., a lehetőségekből még elég sok van, de ezek elég egyszerű példák.

    Felraktam neked ide egy demót:
    http://jsfiddle.net/Sk8erPeter/Ls015fk7/

    Sk8erPeter

Új hozzászólás Aktív témák

Hirdetés