2013-10-09 64 views
0

我有兩個選擇框:第一個包含所有可用項目,第二個包含我從第一個選擇框中選擇的項目。CodeIgniter發佈所有選擇項目

$items=$this->Database->getItems(); 
$mySelect=form_multiselect('addedMaterials', $items, '1', 'id="addedMaterials" multiple="multiple"'); 

從第二選擇框,我已經把這個提交的所有項目:

function selectAll() 
    { 
     var selObj = document.getElementById('addedMaterials'); 
     for (var i=0; i<selObj.options.length; i++) { 
     selObj.options[i].selected = true; 
     } 
    } 

所以,現在,我去給控制器,在這裏我想從裝箱的物品。 ...

$ stuff = $ this-> input-> post('addedMaterials');

我的問題是,它只獲取最後選擇的項目,不是全部。我如何獲得選擇框的所有項目?

+0

嗨驛站,我不知道這是否可以幫助你,但如果你使用jQuery,你可以嘗試$(「#addedMaterials」)找到(「選項」。 ).attr('selected','selected')選擇全部和$('#addedMaterials')。find('option')。removeAttr('selected')來移除選擇。 –

+0

該功能正常工作...我可以看到所有的項目如何選擇。我想解決的是帖子... – dak

+0

你可以編輯你的問題,並把這個選擇的HTML代碼在這裏? –

回答

1

我發現我的解決方案在這裏:Post values from a multiple select

當我們宣佈了多個選擇,屬性「名稱」必須是名稱=「mySelect []」。在我的情況下,它應該是:

$mySelect=form_multiselect('addedMaterials[]', $items, '1', 'id="addedPrinters" multiple="multiple"');