2015-05-20 4 views
-1

поэтому я работаю над этим сайтом Django, и я закончил с переводами i18n, и теперь я пытаюсь установить форму переключателя языка как флаги, но код не работает!Тип входного изображения не работает

выбор/опция/подача отлично работает, но код с изображением типа ввода не работает, он отправляет, перезагружает страницу, но язык не изменяется!

любые идеи?

<div id="lang"> 
     <form action="/i18n/setlang/" method="post"> 
     {% csrf_token %} 
      <input name="next" type="hidden" value="{{request.path}}" /> 

      {%for lang in LANGUAGES %} 
      <input type="hidden" name="language" value="{{lang.0}}"/> 
      <input id="lang_{{lang.0}}" type="image" 
      src="static/img/flags/{{ lang.0 }}.png" alt="{{ lang.1 }}"/> 
      {% endfor %} 

      <select name="language"> 
      {% for lang in LANGUAGES %} 
      <option value="{{ lang.0 }}">{{ lang.1 }}</option> 
      {% endfor %} 
      </select> 

      <input type="submit" value="Go" /> 
     </form> 
    </div> 
+2

Невозможно помочь вам, не видя функции представления, ответственной за изменение языка ... – rnevius

ответ

0

Вы сформированы, перепутались с двумя вещами.

Multiple элемент имеет такой же name атрибуту

<input type="hidden" name="language" value="{{lang.0}}"/> 
<select name="language"> 

элемент формы без каких-либо name атрибута.

<input id="lang_{{lang.0}}" type="image" 
      src="static/img/flags/{{ lang.0 }}.png" alt="{{ lang.1 }}"/>| 

Как вы пытаетесь получить значения в отношении зрения?

+0

Я действительно решил это уже! я помещаю всю форму внутри цикла for, создавая, таким образом, одну форму для каждого языка и флага, на самом деле это самый правильный способ сделать это, я считаю, поскольку каждая форма будет публиковать и запрашивать другой язык ... не так Я раньше не понимал, что так глупо! –

Смежные вопросы