JQuery problem

Programovacie jazyky, rady, poradňa...
scriptType
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 110
Registrovaný: 22 feb 2011, 19:34

JQuery problem

Príspevok od používateľa scriptType »

Zdravím páni a dáma ak tu nejaká je :smt059
Poprosil by som o radu v JQuery. Pri zmene checkboxu vykonávam rovnaký script, ako vtedy, keď načítam stránku viď. kód

Kód: Vybrať všetko

var checks = $('#checks input');

        	checks.each(function(e) {
        		var span_check = $(this).parent().find('.check_stav');
        		span_check.show();
        		
        		if($(this).is(':checked')) {
        			span_check.text('(modul je na podstránke zobrazený)');
        		} else {
        			span_check.text('(modul na podstránke nieje zobrazený, je skrytý)');
        		}
        	});

        	checks.change(function() {

        		var span_check = $(this).parent().find('.check_stav');
        		span_check.show();

        		if($(this).is(':checked')) {
        			span_check.text('(modul je na podstránke zobrazený)');
        		} else {
        			span_check.text('(modul na podstránke nieje zobrazený, je skrytý)');
        		}

        	});
Ide o to, že chcem vypísať "stav" checkboxu (označený/neoznačený alebo s kódu, je na podstránke modul/ nieje). A hlavne chcem vykonať tento kód hneď pri spustení stránky, nech sa pri checkboxy vypíšu ich stavy, nie až po zmene. Preto tam mám aj each a aj change. Momentálne to funguje ale určite sa to dá riešiť lepším spôsobom kde nebudem opakovať tento kód 2x a neviem prečo ma nič nenapadá, nejako som vyschol s nápadmi pri JQuery. Ak by ste o niečom vedeli, prosím napíšte. Ďakujem moc za každú pomoc :)
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2446
Registrovaný: 08 máj 2006, 1:34

Re: JQuery problem

Príspevok od používateľa *****HERO***** »

si to daj do funkcie

Kód: Vybrať všetko

function vypisStav($elem) {
    var span_check = $elem.parent().find('.check_stav').show();

    if ($elem[0].checked) {
        span_check.text('(modul je na podstránke zobrazený)');
    } else {
        span_check.text('(modul na podstránke nieje zobrazený, je skrytý)');
    }
}

checks.each(function () {
    var $this = $(this);
    vypisStav($this);
    $this.change(function () {
        vypisStav($this);
    });
});
Napísať odpoveď