2015-02-06 58 views
0

我有一個組織的項目列表,用戶可以使用複選框選擇。我正在嘗試爲每個選中的複選框傳遞值的元組,以便可以獲取有關項目本身和項目所屬的組的信息。我試過使用隱藏字段,但似乎隱藏的字段值正在傳遞,無論相應的複選框是否已被選中。通過複選框傳遞值的元組

如果複選框被選中,我需要引用ID和父軟件。我可以爲每個選中的複選框傳遞一個(citation.id,sw)的元組,並且由於可以選中多個複選框,所有這些都作爲元組列表一起傳遞?像:[(citation1.id,sw1),(citation2.id,sw2)]]?在我看來,我需要這些信息。

謝謝你的幫助!

select_citations.html

{% for sw in software %} 
    {{sw}} 
    {% for citation in all_citations %} 
     <input type="checkbox" name="myselection[]" value="{{citation.id}}"> 
     <input type="hidden" name="myselection[]" value="{{sw}}"> 
    {% endfor %} 
{% endfor %} 
+0

我我也嘗試過,但它似乎並沒有實際添加/連接我的值:' steph 2015-02-06 16:59:41

回答

1

撰寫這兩款車型的編號爲複選框單個值:

{% for sw in software %} 
    {{sw}} 
    {% for citation in all_citations %} 
    <input type="checkbox" name="selection" value="{{citation.id}}-{{sw.id}}"> 
    {% endfor %} 
{% endfor %} 

然後在視圖解構這個值:

ids = [value.split('-') for value in request.POST.getlist('selection')] 
+0

這正是我需要@catavaran,但它不工作..價值觀念不會通過。即使我不分割價值,列表仍然是空的。任何其他想法? – steph 2015-02-07 15:29:53

+0

您是否使用'POST'方法發送表單?複選框輸入的名稱是否與'getlist()'函數中的相同? – catavaran 2015-02-08 02:20:54

+0

我的部分愚蠢的命名錯誤,對此感到遺憾。謝謝你太多了@catavaran-它的工作原理! – steph 2015-02-08 04:50:40