我想设置ng-model值。我尝试了ng-init和value标签。
我的代码:
在里面
{{formObject.consultantId}} // value prints
<input type="hidden" data-ng-model="formObject.consultant.id" data-ng-init="formObject.consultant.id=formObject.consultantId">
{{formObject.consultant.id}} // no data Prints
值
{{formObject.consultantId}} // value prints
<input type="hidden" data-ng-model="formObject.consultant.id" value="{{formObject.consultantId}}">
{{formObject.consultant.id}} // no data Prints
这对我有用
<input type="hidden" data-ng-model="formObject.consultant.id" data-ng-init="formObject.consultant.id='test'">
{{formObject.consultant.id}} // prints as test
我的代码有什么问题?如何将此值初始化为Model?
编辑
我发现了我的问题。这段代码对我来说是正常HTML格式的。
但是上面的代码在ModelForm(指令)中。
最佳答案
您应该将{{formObject.consultantShare.consultant.id}}
更改为{{formObject.consultant.id}}
(to OP's edit, now removed)
看看这个
var app = angular.module('myApp', []);
app.controller('Controller', function ($scope) {
$scope.formObject = {};
$scope.formObject.consultant = {};
$scope.formObject.consultantId = "254";
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app='myApp' ng-controller="Controller">{{formObject.consultantId}} // value prints
<input type="hidden" data-ng-model="formObject.consultant.id" data-ng-init="formObject.consultant.id=formObject.consultantId" />{{formObject.consultant.id}}
<br/>{{formObject.consultantId}} // value prints
<input type="hidden" data-ng-model="formObject.consultant.id" value="{{formObject.consultantId}}"/>{{formObject.consultant.id}}
</div>