[ peca89bg @ 09.02.2012. 07:59 ] @
Zdravo svima,

Radim jedan sajt(php i mysql) na kome po stranici imam min 3 select boxa.
Populaciju select boxa radim ispisom vrednosti iz baze (mora tako, jer se podaci non - stop menjaju u bazi).
E kada npr. na account strani user sacuva state = alabama i kada se vrati na tu stranu u select boxu mora da ostane selected alabama option.
Ja to trenutno radim ovako:
Code:

select iz baze...
petlja(...){
    if($sacuvan_state = $state_iz_baze){
     echo "<option value='$state_iz_baze' selected='selected'>$state_iz_baze</option>" ;
    }
    else{
    echo "<option value='$state_iz_baze'>$state_iz_baze</option>" ;
   }
}

i to radi ali slozicete se sa mnom da tako samo otperecujem server sa ovim silnim ifovima (ovo je trenutno najbolji slucaj) a zamislite kad u jednoj petlji od 50rez ja moram da ispisem 5 select boxa sa raznim podacima koji ima min 10 a max 150. to traje i traje....

Jel ima neko ideju kako bi se ovo moglo resiti jquery-em tako da ja samo ispisem select box iz petlje a da nekako u js-u(npr. f-ja) dam value koji treba da nadje u select boxu i za taj option da bude selected?

Ja imam sledecu ideju a to je da npr. za svaki select box stavim attr (forselect='alabama' a ako recimo user nije jos uvek sacuvao vrednost onda da ide prazno) i da posle jquery selectorom pohvatam sve select boxove koji imaju ovaj attr i da doda attr selected za option koji ima ovaj value... Jos nesto mi je palo na pamet a to je da posle svakog ispisa select boxa pozovem f-ju kojoj prosledjujem npr. id select boxa i value-a i da onda ona dodeli attr selected, mada ovo mu dodje na isto kao prva ideja ... Koliko je ovo dobro? Ako jeste jel moze kod posto mi front end nikako nije jaca strana a zaista mi je preko potrebno. Koliko god da je ruzno evo nekog koda sa prvom idejom
Code:

        $("select").each(function(){
            if( $(this).attr("forselect") != "" ) {
                //ovde sam stao :)
            }
        });



Izvinjavam se ako negde ima pravopisnih ili gramatickih gresaka, pisem vam posle neprespavane noci
[ dakipro @ 09.02.2012. 08:05 ] @
Moze da se radi javascriptom i pomoglo bi na performansama, ali iskreno... 50 ifova na stranici, to ne da ne opterecuje server nego verovatno i ne postoji metod kojim mozes da izmeris to opterecenje.

Mozda napisi malo krace isti taj kod recimo ovako (pisano napamet)

Code:

echo "<option value='$state_iz_baze'" . 
if($sacuvan_state = $state_iz_baze){
     "selected='selected'
} . 
">$state_iz_baze</option>" ;

[ peca89bg @ 09.02.2012. 08:15 ] @
Hvala na odgovoru ali ipak bi da izbegnem php za set atrr=selected... Jos koja ideja? :)
50 je prosek, imam negde i 150 :)
Pa ne treba mi neko dublje razmisljanje za opeterecenje, jer je uglavnom n^2 a ne daj boze da ide exponencijalno... :S

[Ovu poruku je menjao peca89bg dana 10.02.2012. u 00:24 GMT+1]