-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
cSuwwi
senior tag
Attól függ hogy hol van ez a kód.
Ha egy külön js fileban, akkor direkt módon sehogy. Én ilyenkor azt szoktam csinálni, hogy valamelyik html elemnek adok egy id-t, és egy data-valami attribnak az átadandó értéket. A js résznél meg kiolvasom ezt a data-t.Ha php fileban van akkor egy sima beleírással is mehet: <?=$valtozo?> (vagy ha nincs a short tags engedélyezve akkor <?php print $valtozo?>
-
Sk8erPeter
nagyúr
Szerintem az van, amit Karma említett, hogy az .on()-t kellene használnod, a selectek szülőelemére "aggatva", a selectekre szűrve az .on()-nak paraméterként megadott selectorral.
De amit SOHA többé ne csinálj (mert egészségkárosító hatású), az a (#4117) azonosítójú hsz.-edben látható, és ROSSZ, NAGYON ROSSZ:
var value=$(this).children('option:selected').val(); // BORZALMAS
var valueid=$(this).children(':selected').attr("id"); // NE CSINÁLD
var valuechamp=$(this).children(':selected').attr("champ"); // ROSSZ
Tudod, hogy van, amikor egy ilyet leírsz, akkor az egy kismacska életébe kerül.Totálisan feleslegesen futtatod le újra és újra ugyanazt a metódust, ráadásul egymás alatt:
$(this).children(':selected')
--> ennek az értékét tárold el egy VÁLTOZÓBAN, arra találták ki. Ugyanarra az elemre hivatkozol.
Tehát a fentit cseréld le valahogy így:
var $self = $(this);
var $selectedElement = $self.children('option:selected')
var value=$selectedElement.val();
var valueid=$selectedElement.attr("id");
var valuechamp=$selectedElement.attr("champ");a lényeg: a többször használt elemeket tárold el változó(k)ban, ne kérd le őket újra és újra, mert erőforrás-igényes, még ha nem is veszed észre.
-
-
martonx
veterán
-
Kommy
veterán
Kicsit módosítottam, rajta, most már nem a select-nek kell az id-ja, mivel az most már egységes
És ami a php-ban van mint kimenet:
<select name='track' id="champ">
<option champ= "id" id= "y" value="Érték">"Érték"</option>
</select>Ígxy le tudom kérdezni, melyik a kiválasztott legördülő
$(document).ready(function() {
$("#track").change(function(){
var value=$(this).children('option:selected').val();
var valueid=$(this).children(':selected').attr("id");
var valuechamp=$(this).children(':selected').attr("champ");
$("#edit").load("result.php?q="+value+"&x="+valueid+"&f=1&c=0");
});
});A mostani gond viszont az, hogy csak az első legördülőnél működik, ez miért lehet, a kódot a php generálja, sql lekérdezésekből tehát minden megegyezik bennük semmi eltérés.
Új hozzászólás Aktív témák
- Lenovo ThinkPad T570, T580, P51s, P52s eredeti Lenovo, külső akkumulátor eladó
- Latitude 5450 27% 14" FHD IPS Ultra 5 135U 16GB 512GB NVMe magyar vibill gar
- Új Steelseries Arctis Nova 4 Wireless gamer fejhallgató 1 év garanciával
- Urmet Dialog PA3120 180 wattos digitális erősítő 1 év garanciával
- Lenovo Thinkpad USB-C dokkoló
- Telefon felváráslás!! Xiaomi 13T, Xiaomi 13T Pro, Xiaomi 14T, Xiaomi 14T Pro
- Lenovo LEGION Pro 5 / Pro 7, Lenovo Yoga Pro gépek (RTX 4060 / 4070 / 4080 / 4090)
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32 RAM RTX 5060Ti 16GB GAMER PC termékbeszámítással
- 124 - Lenovo Yoga Pro 7 (14IMH9) - Intel Core Ultra 9 185H, RTX 4060 (48 hónap garancia!) (ELKELT)
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest