Diskuze: Zpracování select multiple

PHP PHP Zpracování select multiple American English version English version

Avatar
MK
Neregistrovaný
Avatar
MK:

Ahoj,

pokouším se zpracovat formulář, kde mám select, nastavený jako multiple... ale mám problém, že bych chtěl aby byly prvky v poli v pořadí, jak si je uživatel nakliká... Teď jsou v pořadí, jak jsou vypsány v tom seznamu a to se mi nehodí... Je možné to nějak zařídit?

MK

 
Odpovědět 6.1.2014 23:00
Avatar
solta
Člen
Avatar
solta:

Jestli tě dobře chápu tak myslím že jedinou možností bude pomoci javascriptu ukládat tyto podnoty do jiného inputu v tom pořadí v jakém je uživatel naklikal a potom si to rozparsovat

 
Nahoru Odpovědět 7.1.2014 0:27
Avatar
Honza Bittner
Redaktor
Avatar
Honza Bittner:

Možná by ti mohlo pomoc http://jqueryui.com/sortable/

Nahoru Odpovědět 7.1.2014 0:53
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
MK
Neregistrovaný
Avatar
Odpovídá na Honza Bittner
MK:

Ten sortable mi bude asi k ničemu. Já do jednotlivých optionů toho selectu vypíšu nějaké data z DB, uživatel si něco vybere a ten výběr chci zpracovat a vepsat do další tabulky, ale musí to být v pořadí, ve kterém bylo vybráno...

 
Nahoru Odpovědět 7.1.2014 1:37
Avatar
solta
Člen
Avatar
solta:

dokonalé to rozhodně není a jistě někdo příjde s lepším řešením

//jQuery
$(document).ready(function(){
        var poradiArray = new Array();

        $('.checkbox').click( function(){
                check=false;
                val=$(this).val();
                for(i = 0; i < poradiArray.length; i++){
                        if(poradiArray[i] == val){
                                if(i==0)
                                        poradiArray.splice(i,i+1);
                                else
                                        poradiArray.splice(i,i);
                                check=true;
                        }
                }
                if(!check)poradiArray.push(val);
                $('input[name=poradi1]').val(JSON.stringify(poradiArray));
                $('input[name=poradi2]').val(poradiArray.toString());

        })
})

//php
<?php
$data = json_decode($_GET['poradi1']);
print_r($data);
echo "<br />";
$data = explode(',',$_GET['poradi2']);
print_r($data);
?>

//html
    <label>
      <input type="checkbox" name="Checkbox_0" value="0" class="checkbox" />
      Zaškrtávací pole 0</label><br />
    <label>
      <input type="checkbox" name="checkbox_1" value="1" class="checkbox" />
      Zaškrtávací pole 1</label>
    <br />
    <label>
      <input type="checkbox" name="Checkbox_2" value="2" class="checkbox" />
      Zaškrtávací pole 2</label>
    <br />
    <label>
      <input type="checkbox" name="Checkbox_3" value="3" class="checkbox" />
      Zaškrtávací pole 3</label>
    <br /><br />
<input name="poradi1" type="text" />
<input name="poradi2" type="text" />
  <br />
<br />
<input name="" type="submit" />
 
Nahoru Odpovědět 7.1.2014 4:54
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.