2015-09-28 6 views
0

Я создал регистрационную форму. Я использую сервер i18next.Placeholder i18next перевод не работает

Это моя конфигурация на стороне сервера:

var i18n = require('i18next'); 
i18n.init({ 
saveMissing: true, 
debug: true 
}); 

app.use(i18n.handle); 

Ниже приведен мой локали JSON»

{ 
"app": { 
    "lblalreadyhaveanaccount": "¿Ya tienes una cuenta?", 
    "lblsignin": "Ingresar", 
    "lblhelp": "Ayuda", 
    "lblletscreateyouraccount": "Vamos a crear su cuenta", 
    "lblname": "Nombre", 
    "phfirstname": "Nombre de pila", 
    .... 
} 

Я использую EJS как мой шаблон двигателя Это следующий код:.

... 
<form ng-submit="validateForm()"> 
       <div class="form-group"> 
        <!-- Name --> 
        <label><%= t('app.lblname') %></label> 

        <div class="row"> 
         <div class="col-md-6"> 
          <input id="fname" type="text" class="form-control" 
            placeholder=<%= t('app.phfirstname') %>> 
         </div> 
         <div class="col-md-6"> 
          <input id="lname" type="text" class="form-control" 
            placeholder=<%= t('app.phlastname') %>> 
         </div> 
        </div> 
    .... 

Мой вопрос в том, что метка с многословной строкой отображается правильно, однако placeho lder показывает только первое слово из строки в locale json.

Вот что инспектировать элемент показывает:

<input id="fname" type="text" class="form-control" placeholder="Nombre" de="" pila=""> 

Я не могу найти решение этой проблемы. Пожалуйста, помогите мне. Спасибо заранее.

+0

Как выглядит ваш ключ «lblletscreateyouraccount»? Возможно, есть странная кодировка, которую вы не видите. – tier1

+0

извините, это была опечатка. Проблема остается прежней. – GauravPandey

ответ

1

Похоже, что браузер пытается понять слова во входных тегах. Чтобы помочь ему, попробуйте добавить двойные кавычки вокруг текста вашего заполнителя, например:

<div class="row"> 
    <div class="col-md-6"> 
     <input id="fname" type="text" class="form-control" 
       placeholder="<%= t('app.phfirstname') %>" 
    </div> 
    <div class="col-md-6"> 
     <input id="lname" type="text" class="form-control" 
       placeholder="<%= t('app.phlastname') %>" 
    </div> 
</div> 
Смежные вопросы