Autor Zpráva
chipware
Profil *
Zdravím, mám rozklikávací menu a místo téhle roletky potřebuji z každé volby udělat button a posílat to do url adresy.

<form class="woocommerce-ordering" method="get">
<select name="orderby" class="orderby">
<option value="menu_order" >Default sorting</option>
<option value="popularity"  selected='selected'>Sort by popularity</option>
<option value="rating" >Sort by average rating</option>
<option value="date" >Sort by newness</option>
<option value="price" >Sort by price: low to high</option>
<option value="price-desc" >Sort by price: high to low</option>    
</select>
<input type="hidden" name="attest" value="true" /></form>


vůbec se mi to nedaří. Je tu někdo ochotný, kdo by mi alespoň ukázal příklad jak poslat např. "Sort by price:low to high" přes jeden klikací button, zbytek už si domyslím :)

Děkuji moc!
Alphard
Profil
Formulář se musí odeslat, vy tady nemáte submit, takže je po výběru třeba stisknou Enter. Pak se načte strána s ?orderby=date například.
Jestli chcete odeslat formulář ihned po výběru nějaké hodnoty ze selectu, je to úkol pro javascript. Formulář lze odeslat metodou submit, kterou zavoláte v select eventu change.

Kdybyste skutečně chtěl mít každou volbu jako samostatný button, je to možné, jen si rolovací menu budete muset nascriptovat, ale to myslím nechcete.
Tori
Profil
chipware:
Formulář může mít více odesílacích tlačítek, kterým nastavíte požadované hodnoty (date, price, price-desc, ...). Pak je můžete pomocí CSS skrýt a ke každému submitu přidat a nastylovat <label> s libovolným jiným textem. (= roletka se zcela nahradí několika odesílacími tlačítky)
<input type='submit' class='skryty' name='orderby' value='menu_order' id='s1'>
<label for='s1' class='tlacitko'>Default sorting</label>
peta
Profil
<form>
<input type=hidden name=orderby>
<label onlick="odesli(this)">menu_order</label>
<label onlick="odesli(this)">popularity</label>
</form>
<script>
function odesli(label)
{
label.form.orderby=label.innetHTML;
label.form.submit();
}
</script>

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: