2014-04-25 9 views
7

Ciao Ho il seguente problema che sembra facile e dovrebbe funzionare ma non lo è.Angularjs che assegna valore a ng-model utilizzando ng-init

Nel mio codice ho ingresso

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

Quando guardo il DOM utilizzando lo strumento Firebug vedo il valore

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

Ma visualizzazione solito 6 nella casella di input né io possa accedere usando #scope. Per favore fatemi sapere cosa c'è di sbagliato qui e come risolverlo in modo che ng-model possa avere da ng-init. Grazie

risposta

19

sbarazzarsi delle parentesi nell'espressione in modo che valuterà pId direttamente dal campo di applicazione

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

Plunk

5

ng-init prende un'espressione e quindi non c'è bisogno delle parentesi graffe:

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