【发布时间】:2014-11-26 15:13:10
【问题描述】:
下面代码中的“myData”是我从 $http.get 响应中提取的一个 json 对象(我在我的网络应用程序初始化时调用该请求)。用户必须能够更改数据,因此我创建了下面的代码,其中的输入填充了该对象中的值。
<div ng-repeat="(parameter,value) in myData">
<p>{{parameter}}</p>
<!-- show only if val is defined (not 0 or null) -->
<div ng-repeat="(par,val) in value" ng-show="val">
<p>{{par}} : <input type="text" value={{val}}></p> <!-- val is the value the user can change, and par is the parameter name such as in { parameter: "value" } -->
</div>
</div>
我创建了用户在想要保存更改的数据时可以单击的按钮 (ng-click="saveData()")。
saveData 函数然后可以使用 $http.put(url,data) 在某处更新数据...
我不知道如何将整个对象传递给 saveData() 函数? 我知道你可以通过像 saveData(myVariableOrObject) 这样添加它来传递所有内容,但我不知道在我的情况下我会如何做到这一点。
可能我在这里遗漏了一些东西,因为我对 angularJS 相当陌生。我的 html 输入是否应该有某种 ng-model 以某种方式将值连接到控制器? 我可能会弄清楚这一点,但是对于整个对象,嗯?我需要再次在控制器函数中构造对象还是有更简单的方法?
如果有人能指出我正确的方向,我会很高兴。
如果我不清楚,请询问更多信息。
谢谢!
【问题讨论】:
-
试试 onclick="saveData(myData)"