2013-12-18 16 views
9

cerco di raggiungere questo obiettivo:Posso impostare un valore predefinito per un input con il modello ng nel mio modello?

<input name="formkey" 
     ng-model="formkey" 
     value="1_4bKU-Be3K4sMuoQTDHfz7uMqGd9N9fU6bGd1EjEu8s" 
> 

o:

<input type="hidden" 
     name="formkey" 
     ng-model="formkey" 
     value="1_4bKU-Be3K4sMuoQTDHfz7uMqGd9N9fU6bGd1EjEu8s" 
> 

L'ingresso è vuoto quando lo guardo in un browser. Se rimuovo ng-model="formkey" funziona, quindi presumo che il valore della chiave di forma vuota sovrascriva il mio valore.

So che posso aggiungere valori allo scope con javascript. Ma io uso questo stesso javascript in molte viste diverse, quindi preferirei molto aggiungere il valore nella mia vista in qualche modo. è tutto possibile?

+0

Hai provato 'ng-init = 'formkey = somedefault''? (non l'ha testato) – haki

+0

È possibile utilizzare ng-init per chiamare una funzione di ambito o inizializzare direttamente il valore. (html qui) Neozaru

risposta

12

ng-init dovrebbe fare il trucco:

<input ng-init="formkey='Your default value'" /> 
2

set ng-init invece di value:

<input name="formkey" 
    ng-init = "formkey='Be3K4sMuoQTDHfz7uMqGd9N9fU6bGd1EjEu8s'" 
    ng-model="formkey" 
> 

Demo Fiddle

+1

c'è qualche ragione per mantenere la proprietà valore? – Himmators

0

se il valore di default per visualizzare in contr ingresso ol è un valore sessionStorage, quindi come possiamo inizializzare quel valore in ng-init.

<input type="text" ng-model="data.msg" ng-init="data.msg=sessionStorage('Message')"/> 
5

Credo che le altre risposte siano un po 'incomplete.

È possibile raggiungere questo obiettivo con ng-init collegando il ng-model al valore che si desidera impostare:

<input ng-model="formkey" ng-init="formkey='Your default value'" /> 
Problemi correlati