Žymimosios akutės ir žymimieji langeliai
Parašė WyPuk 2009 balandžio 6 15:04:55
Interneto svetainių paslaugomis patogiau naudotis, kai jose būna tiekiamų paslaugų pasirinkimo ir lankytojams aktualios informacijos paieškos priemonės. Tokioms priemonėms sudaryti galima naudoti anksčiau aptartus teksto laukelius jų analizei skirtus [b]JavaScript[/b]
arba kurios nors kitos programavimo kalbos skriptus.

Jeigu norite padaryti tokį dalyką kaip prekių rinkinį su žymimosiomis akutėmis checkbox:

[code]<html>
<head></head>
<body>
<form name="Prekyba">
<p>Vardas: <input type="text" name="vard" size="15">
Pavardė: <input type="text" name="pav" size="20"><br>
<p><b>Pažymėkite jums patinkančius puslapius:</b><br><br>
<input type="checkbox" name="dlf" value="ON">Delfi.LT
<input type="checkbox" name"alf" value="ON">Alfa.LT
<input type="checkbox" name"one" value="ON">One.LT
<br><br>
<input type="submit" value="Užsakyti"> &nbsp;
<input type="reset" value="Trinti"></p>
<form>
</body></html>[/code]


Žymimųjų akučių aprašymas skiriasi tuo, kad visiems vienos grupės mygtukams nurodoma ta pati vardą
aprašančio parametro [b]name[/b] reikšmė, kuri vadinama mygtukų grupės vardu. Taip yra todėl, kad parinkimo aprašymui pakanka
nurodyti grupės vardą ir pažymėtos akutės paskirtį aprašančia reikšmę ([b]value[/b]). Žymimųjų akučių aprašymo pavizdys:


[code]<form name="Testas">
<p><b>Pasirinkite kalbą:</b><br><br>
<input type="radio" name="kalba" checked value="lietuvių">lietuvių
<input type="radio" name="kalba" value="anglų">anglų
<input type="radio" name="kalba" value="vokiečių">vokiečių <br><br>
</form>
[/code]

Svetainėse, kurių tinklalapiuose lankytojas turi pasirinkti pageidaujamas paslaugas, tenka
tikrinti, ar parinkimas tikrai atliktas. Perrenkant elementus, galima tikrinti jų tipus ir parinkimą.
Pavyzdžiui tinklapiui galima sudaryti tokią žymimųjų langelių įjungimo kontrolės funkciją.

[code]function Tikrinti(){
gerai = 0; //Pradinė prielaida apie užpildymą
for (i= 0; i<document.Prekyba.elements.lenght; į++) //Ar elementų perrinkimo ciklas
if(document.Prekyba.elements[i].type == "checkbox")&&
(document.Prekyba.elements[i].checked)) //Ar elementas užpildytas?
gerai += 1; //Pažymėtų žymimųjų langelių skaičiavimas

if(!gerai) { //Ar bent vienas žymimasis langelis buvo pažymėtas?
alert("Nurodykite pageidaujamą prekę");
return false;
return true;
}[/code]

Siūloma atkreipti dėmesį į tai, kad įvedimo kontrolės funkcijai, priklausomai nuo gautų
rezultatų, suteikiama reikšmė [b]true[/b] (yra parinktų elementų) arba [b]false[/b] (parinktų elementų nėra)
Arba galima tinkamai panaudoti mygtuką [b]submit[/b] kartu su [b]Tikrinti()[/b].
Viskas yra aprašoma taip

[code]<form name="Prekyba" onSubmit= "return Tikrinti()">[/code]

Pateiktame funkcijos [b]Tikrinti()[/b] aprašyme keletą kartų įrašyti ilgi sudėtiniai formos elementų
savybių vardai. Tokius aprašymus galima suprastinti pirijungimo operatoriumi [b]with[/b]. Jo sintaksė

[code]with (Objekto vardas){
Operatoriai, kuriuose objekto savybės nurodomos paprastais vardais
};[/code]

Pavyzdžiui naudojant operatorių [b]with[/b], funkcijoje [b]Tikrinti[/b] formos žymimųjų langelių
žymėjimo tikrinamą galima aprašyti taip:

[code]gerai = 0;
for (i= 0; i<document.Prekyba.elements.lenght; i++)
with (document.Prekyba.elements[i]) //Prisijungimo operatorius
if ((type == "checkbox")&&(checked)) //Objekto savybių tvarkymo aprašymas
gerai += 1;[/code]

[b][color=red]Rašė: WyPuk[/color][/b]
[b][color=red]Rašyta nuo knygos[/color]
[/b]