2015-06-01 41 views
0

在通常的javascript表單提交中,會發生什麼情況是,當我完成發佈時,元素名稱和值會自動在HTTP請求中發送到服務器,而不必收集它們中的每一個。ng-submit VS發佈表單提交

我在角度提交中注意到的情況並非如此。基於ng-submit example我必須收集我在視圖中的每個ng模型到我的控制器中,並且我必須在我編寫的提交函數中執行此操作。

我的問題
心不是有沒有辦法在那裏我可以收集一切從視圖,而無需指所有的NG-模型在我的控制?

爲什麼?
有這種情況,表單元素是從一個指令動態繪製的,它不是很實用,當它們是這麼多時指的是每個元素。 有什麼建議嗎?

回答

3

這取決於應用程序的應用程序。如果你的是SPA,那麼你必須確保你使用ng-submit並提交表格。

當你添加動態元素到一個表單,如果你確定你也相應地添加ng-model那麼你不必擔心它們。它將成爲表單提交的一部分。

我認爲你可以做的是,所有的表單域(甚至是動態元素)都可以保存在一個對象中,例如, formData,然後將所有模型添加到此對象中。現在在提交方法中,您可以使用formData對象讀取所有表單元素值(事件動態元素值)。

只要添加動態元素確保它被添加到formData對象

例如

<input ng-model="formData.field1" type="text"> 
<input ng-model="formData.field" type="text"> 

內提交方法,你可以用得到的表單字段vlaues $.param($scope.formData)

+0

是它的SPA,什麼,我缺少的是這些NG-模型我加入,我一定要參考他們每個人的和得到他們的價值?或者當我添加ng-submit =「submit()」時它們會自動發送到我的控制器提交函數? @ShakarSangoli – sisimh