angular JS从使用ng-repeat的表单发布数据

时间:2013-07-09 00:44:28

标签: javascript forms angularjs ng-repeat

我正在尝试从使用ng-repeat的html表单发布数据,以生成多个输入文本元素和相关的下拉菜单。我的html模板在下面,我想知道是否还有将“items”或其他ng-model命名方法中的数据作为集合发布到控制器。

 <form ng-submit="submitAssignments()">
    <input type="submit" value="Submit" />
        <div ng-repeat="items in taskList">
               <input type="text" ng-model="items.task" readonly="readonly"  />
               <select ng-model="items.definition" 
                ng-options="option.id as option.definition for option in taskListGroup"></select>
        </div>

我创建了一个jsfiddle(http://jsfiddle.net/y4cQD/24/),其中包含我正在尝试做的事情,其中​​一个函数为空,因为我还没有弄清楚如何将元素从ng-repeat传递给post函数。

我一直在阅读ng-repeat如何创建自己的范围,以及在将ng模型附加到基元(我认为我避免使用)时它的行为有点奇怪,但是我仍然有点难过从这往哪儿走。

如果我的jsFiddle中的策略不可能在角度上拉开,我想到的另一个选项是使用ng-repeat来创建全新的表单而不仅仅是新的元素,并且可能设置一个观察者来发布数据用户更改下拉列表时的每个表单。无论如何,因为我已经坚持了比我想承认的更长的时间,所以任何帮助将不胜感激。先感谢您。

1 个答案:

答案 0 :(得分:1)

你的小提琴似乎工作正常。如果您只是使用taskList在小提琴的某处输出{{taskList}}并使用下拉列表,您可以看到所选的下拉列值在taskList项中得到更新。

您现在可以使用此任务列表使用$http$resource发布到服务器。见here