2012-12-05 82 views
-2

我想爲多文件下載目的創建複選框。有許多文件的列表,每個文件都有自己的複選框。我想選擇其中的4個,只按下一次下載按鈕,然後所有選中的文件名將作爲列表發送給控制器(Angular JS)。但我不知道如何啓動它,以及如何將參數列表發送回Angular JS控制器。我想要做的是將列表發送回控制器並調用以JAVA編寫的多重下載方法。如何使用Angular JS從多選複選框中獲取值

+1

你有什麼,你試過嗎? –

+0

我試圖綁定從JSON獲得的值並將其設置爲每個複選框。我嘗試打勾多個複選框,然後按提交,但沒有發生任何事情。我從Firebug觀察,它顯示沒有任何東西發回到AngularJS控制器。其實,我試圖尋找這樣的提示或指導。我在互聯網上發現的只是更新客戶端複選框的值,但我將這些值作爲列表發送併發送回控制器,這將調用服務器端的另一種方法... – Takumi

回答

7

您可以使用ng-model來指定屬性來放置該值。它會自動將其放入數組中。 Here is a fiddle

而這裏的代碼:

<select multiple="multiple" ng-model="value" 
    ng-options="option for option in ['bananas', 'rice', 'applesauce', 'toast']"></select> 
    <hr/> 
    value: {{value}} 
+0

謝謝你許多。它對我所做的事情是封閉的。我已經分配了每個複選框來保存從JSON獲得的單個值。然而,我需要做的是點擊每個按鈕的檢查,並將其發送回控制器,而不是僅顯示在客戶端。因爲我需要通過選中某個複選框來執行多次下載,並且只需按下一個按鈕即可下載它們。 – Takumi

+1

我不太明白爲什麼這個答案對你來說還不夠。你只需要把按鈕和推事件處理程序來訪問'$ scope.value',是嗎?請參閱'ng-click'以瞭解如何添加點擊處理程序(如果尚未添加)。 – Tosh