| Autor | Zpráva | ||
|---|---|---|---|
| Milan1236000 Profil |
#1 · Zasláno: 12. 11. 2015, 19:38:38
Zdravím,
mám následující kód, tady i s url. Problém je, že když zvolím Sestupně, položka v selectu zůstane na Vzestupně, ale v url se sestupne objeví. Další problém je, že v selectu nejde vybrat možnost Vzestupně, takže to musím přepisovat v url.
Jak to sesynchronizovat, aby se v selectu objevovalo, to co v url? |
||
| Dan Charousek Profil |
#2 · Zasláno: 12. 11. 2015, 20:12:09
Toto bys měl řešit spíš v PHP. Kontrolovat, zda existuje v poli
$_GET klíč, který odpovídá value některému z optionů. Tím se odstraní i druhý problém, protože při přesměrování je vždy výchozí "Vzestupně", tudíž se na něj nikdy nedostaneš tak, abys spustil událost onChange.
<?php
$options = ["vzestupne" => "Vzestupně", "sestupne" => "Sestupně"];
$selected = isset($_GET['razeni']) ? $_GET['razeni'] : "vzestupne";
echo '<select onChange="location.href=\'?razeni=\'+this.value">';
foreach($options as $key => $value) {
echo '<option value="' . $key . '"' . ($selected == $key ? " selected" : "") . '>' . $value . '</option>';
}
echo '</select>';
?>Lze to udělat i v JavaScriptu, ale nepřijde mi to jako vhodné řešení. Pokud bys měl i přesto zájem, tak zde se můžeš inspirovat, jak vytvoři funkci, pomocí které získáš klíče a hodnoty z adresy a obdobným způsobem bys mohl přidat atribut selected zvolenému optionu.
|
||
| Milan1236000 Profil |
#3 · Zasláno: 13. 11. 2015, 16:26:33
Dan Charousek:
To je taky dobré, díky. |
||
| Dan Charousek Profil |
Možná by se mohlo přesunout do PHP.
Moderátor Chamurappi: Dobrý nápad, přesunuto z kategorie JavaScript.
|
||
|
Časová prodleva: 11 let
|
|||
0