2015-06-24 29 views
7

Ho questa situazione: ho bisogno di aggiungere virgolette all'interno di un campo di testo di input (html) senza modificare il valore dell'input. Sto lavorando con angolare per cui uso ngModel, sembra che questoAggiungere un prefisso/suffisso al valore del tag di input

<input ng-model="data" type="text" /> 

Voglio che il campo di input per mostrare "tutto ciò che è in {{data}}" ma i dati variabili stesso rimane invariato (senza virgolette).

Non ho ancora trovato css/trucchi angolari ... qualche idea?

risposta

7

Utilizzando ng-model="data" nel <input type="text"> lega il data con tutto il campo di testo. Questo non è particolarmente utile in situazioni in cui si desidera solo una porzione di testo (visualizzata nel campo di testo) per ottenere il binding con l'ambito.

Per esempio, se si fa

<input type="text" value="prefixText {{name}} suffixText" ng-model="name"> 

La casella di inserimento visualizzerà ciò che è in name (senza testo prefisso/suffisso)

Tuttavia, c'è una soluzione. Utilizzare ng-bind sulla variabile e pronunciare il prefisso/suffisso del testo separatamente nell'attributo value="...".

<input type="text" value="prefixText {{name}} suffixText" ng-bind="name"> 

Ecco il demo

+0

c'è un modo per rendere la prefixText suffixText circondano il testo in cui sto scrivendo è? –

+0

La prima casella di testo in cui si sta digitando viene fornita a * consente all'utente di cambiare * il 'nome' e vedere il suo effetto nella seconda casella di testo – nalinc

+1

Voglio tutto in uno ... cioè i pre/suffissi devono circondare il testo come Lo scrivo senza cambiare {{data}} –

Problemi correlati