7

Hi I have following issue which seems easy and should work but is not.

In my code I have input

 <input type="text"  ng-model="c.Id"  ng-init="c.Id={{pId}}"/>

When I look at the DOM using firebug tool I see the value

 <input type="text"  ng-model="c.Id"  ng-init="c.Id=6"/>

But it wont display 6 in the input box neither I can access it using #scope. Please let me know what is wrong here and how to fix it so that ng-model can have from ng-init. Thanks

J. Davidson
  • 3,297
  • 13
  • 54
  • 102

3 Answers3

20

Get rid of the braces in the expression so that it will evaluate pId directly from the scope

<input type="text"  ng-model="c.Id"  ng-init="c.Id=pId"/>

Plunk

Marc Kline
  • 9,399
  • 1
  • 33
  • 36
5

ng-inittakes an expression and therefore you do not need the curly braces:

<input type="text"  ng-model="c.Id"  ng-init="c.Id=pId"/>
Sebastian
  • 16,813
  • 4
  • 49
  • 56
2

Assigning the value to ng-model using ng-value

   <input type="text" class="form-control" ng-model="inputPrice" />
   <input type="text" ng-model="newPrice" ng-value="newPrice=inputPrice" />
raviook
  • 99
  • 1
  • 5