Autor | Zpráva | ||
---|---|---|---|
Vendelína Profil * |
#1 · Zasláno: 6. 10. 2012, 12:21:43
Potřebovala bych script, kterým když vyberu nějaký checkbox (jeden i více), aby se mě hodnota u checkbox VALUE uložila do cookie se splatností 1 hodiny. Pokud checkbox odznačím, tak naopak potřebuji cookie zase smazat.
Na internetu jsem našla script: $(function() { $(".rememberme").change(function() { if ($(this).is(":checked")) $.cookie("loggin", $("#username").val(), {expires: 7}); } }); ... ale vůbec ho nechápu, protože javascript přes jQuery neumím. Umí mě zde někdo poradit, jak takový javascript bude vypadat? Moc Vám hrozně děkuji za výpomoc. |
||
vuuul Profil |
#2 · Zasláno: 8. 10. 2012, 15:04:43
Já bych to zkusil přes událost onClick nebo onChange, pokud uživatel objekt označí, proběhne funkce, která nastaví hodnotu cookie
|
||
Vendelína Profil * |
#3 · Zasláno: 9. 10. 2012, 00:14:29
Jak by v tomto případě javascript vypadal? Vím, jsem otravná, ale jQuery neovládám.
|
||
vuuul Profil |
#4 · Zasláno: 9. 10. 2012, 15:42:08
být vámi se nevážu na tento script v jQuery a napíšu to čistě a od základu v Javascriptu
|
||
Časová prodleva: 3 dny
|
|||
Vendelína Profil * |
#5 · Zasláno: 12. 10. 2012, 12:43:16
Porádite prosím, jak by měl script vypadat? Na internetu jsem nic nenašla a sama z javascriptu nic dohromady nedám :(
|
||
vuuul Profil |
#6 · Zasláno: 12. 10. 2012, 15:14:39
Narychlo jsem napsal něco takového:
<html> <head> <script> function cookiedef() { if(document.zaskrtavac.cekbox.checked==true) //pokud je checkbox zaskrtnuty { trvanisus = new Date() trvanisus.setTime(trvanisus.getTime() + 1000 * 60 * 60) // jedna hodina od data zaskrtnuti document.cookie = "kukina= vase hodnota; expires=" + trvanisus.toGMTString() + "; path=/" // do cookie jmenem kukina se splatnosti 1 hodiny se ulozi vami zvolena hodnota } else //pokud neni checkbox zaskrtnuty { trvanisus = new Date() trvanisus.setTime(trvanisus.getTime()) // nyni document.cookie = "kukina= cokoliv; expires=" + trvanisus.toGMTString() + "; path=/"// cookie jmenem kukina vyprsi ve chvili, kdy je nadefinovana(tim dojde k jejimu smazani) } } </script> </head> <body> <form name="zaskrtavac" action="?"> <input type="checkbox" name="cekbox" onChange="cookiedef()"> </form> </body> </html> Vypadá to, že by to mělo fungovat. Pokud by to nefungovalo, nebo by byly jakékoliv dotazy, ozvěte se |
||
Vendelína Profil * |
#7 · Zasláno: 12. 10. 2012, 20:24:47
Jste moc hodný. Funguje to super. Jen ...
Šlo by ukládat do cookie hodnotu value uvedenou v checkbox? Jde o to, ze checkboxu zde budu mit mnoho a name zůstane stejné s tím, že do value bych chtěla vložit ID, které bych pak potřebovala ukládat do cookie. |
||
vuuul Profil |
#8 · Zasláno: 14. 10. 2012, 00:09:22
Pokud vím, tak kdyby se dalo více checkboxům stejné jméno, skript by správně nefungoval, pak by asi nejjednodušším řešením byla funkce s argumentem. Do cookie se klidně může ukládat i jméno checkboxu, není nutné ukládat jeho ID.
|
||
Tori Profil |
#9 · Zasláno: 14. 10. 2012, 00:35:28
Vendelína:
„checkboxu zde budu mit mnoho a name zůstane stejné s tím, že do value bych chtěla vložit ID, které bych pak potřebovala ukládat do cookie“ Pokud chcete v PHP zjistit, které checkboxy byly zaškrtnuté, tak je zřejmě stejně máte pojmenované jako pole: name="nazev[]" value="3" nebo name="nazev[3]" . S druhou variantou (tedy název[id]) by se i v JS pracovalo o něco lépe. Koukněte na příklady zápisu / čtení cookies JavaScriptem (je to bez jQuery, ale není to o nic těžší).
|
||
Časová prodleva: 12 let
|
0