【发布时间】:2016-03-13 04:38:02
【问题描述】:
我正在尝试在 AngularJS 中从我的表单中获取数据,除了我没有输入任何内容的字段之外,这一切正常。我将字段从隐藏更改为文本,但两者都不起作用,但是如果你检查元素,您可以在其中看到正确的值。这是我的 HTML:
<div ng-controller="postMessageCtrl as Ctrl">
<form ng-submit="processMessage()">
<div class="form-group">
<input type="message" class="form-control" placeholder="Message" ng-model="formData.message">
a{{data.receiver.id}}a
<input type="hidden" class="form-control" ng-model="formData.receiver" ng-value="data.receiver.id" />
</div>
<button type="submit" class="btn btn-primary btnq-lg btn-block">Verzenden</button>
</form>
</div>
这是我的控制器:
app.controller('postMessageCtrl', function ($scope, $http, $state, localStorageService) {
$scope.formData = {};
//$scope.formData = localStorageService.get('userKey');
$scope.formData = {
key: localStorageService.get('userKey'),
message: '',
receiver: ''
};
console.log($scope.formData);
});
key和message填写正确,但是receiver id填写不正确。有什么建议?
【问题讨论】:
-
能否添加
processMessage()的实现? -
processmessage 在 console.log(formdata) 下面,我在 console.log 之后就退出了代码
-
我个人认为不需要使用 AngularJS 提交,因为无论如何,由于双向绑定,您的数据对象总是正确加载。只需在单击按钮时执行
Save()函数。可以帮助您避免复杂性。 -
我是 Angular 新手....我真的不明白该怎么做
-
你可以简单地使用 ngInit 指令,检查我的答案。
标签: javascript angularjs