我无法通过$scope.form
获取表单值。在视图和Batarang中,我看到表单对象具有所有字段的正确名称,但没有值。另一方面,实际表单字段中的值是正确的,$scope.mymodel.headline
值也是正确的(参见下面的示例)。
为什么会发生这种情况?
随后是1个字段的样本。巴塔朗输出:
{
mymodel: {
headline: My value
}
form: {
mymodel[headline]: { }
}
}
如果我在视图中输出{{form}}
,则显示:
mymodel[headline]: { }
控制器代码非常简单:
@mymodelCtrl = ['$scope', ($scope) ->
$scope.init = (mymodel) ->
$scope.mymodel = mymodel
]
很简化的HTML:
<div id="new_mymodel" ng-controller="mymodelCtrl"
ng-init="init({'headline': 'my value'})" class="ng-scope">
<form action="/myurl" id="new_mymodel" method="post" name="form" role="form">
<input id="mymodel_headline" name="mymodel[headline]"
ng-model="mymodel.headline" ng-required="true" type="text">
<input type="submit">
</form>
</div>
更新:起初我认为接受的答案是错误的,但那是因为一个侧面问题。但它是正确的:问题是开发人员控制台和batarang和视图显示错误,而不是该字段是空的。我需要使用$scope.form["mymodel[headline]"].$formVaue
。