I\'m using angular-translate to translate the page content in to different languages.
There is a directive in angular-translate to help with this. See this issue.
<input placeholder="Regular Placeholder" translate translate-attr-placeholder="text" translate-value-browser="{{app.browser}}">
Here is a preview of a working plunkr from that thread: http://plnkr.co/edit/J4Ai71puzOaA0op7kDgo?p=preview
I Use this method:
In en.json:
{
"ENTER_TEXT": "{{label}} را وارد کنید",
"DISCOUNT_CODE": "کد تخفیف"
}
In template:
<input type="text" placeholder="{{'ENTER_TEXT' | translate: {label: 'DISCOUNT_CODE' | translate} }}" >
+ira 's solution works for me.
<input type ='text' placeholder = "{'USERNAME' | translate}">
where username is the key for the translation. So that translation JSON line might look like the following in Spanish
"USERNAME": "Nombre",
The two together puts Nombre as a placeholder inside the input box
I used placeholder="{{ 'some_text' | translate }}" instead of placeholder="{{ "some_text" | translate }}" that worked for me
Did you try:
<input type="text" placeholder="{{ 'my.i18n.key' | translate }}" ng-model="myModel">