Различное поведение форм в Chrome / Firefox - PullRequest
0 голосов
/ 27 сентября 2010

У меня есть эта форма в приложении Django В Firefox это работает как шарм, и в Chrome / IE6 это не сделает необходимую операцию post Есть идеи почему?

<form action="/lang/i18n/setlang/" method="post">
<input name="next" type="hidden"  />

<input name="language" type="image" value="ar" src="/flags/flag_ar.jpg" onclick="this.form.submit()" title="Arabic" />

<input name="language" type="image" value="fr" src="/flags/flag_fr.jpg" onclick="this.form.submit()" title="French" />

<input name="language" type="image" value="en" src="/flags/flag_en.jpg" onclick="this.form.submit()" title="English" />

<input name="language" type="image" value="es" src="/flags/flag_es.jpg" onclick="this.form.submit()" title="Spanish" />

<input name="language" type="image" value="de" src="/flags/flag_de.jpg" onclick="this.form.submit()" title="German" />

<input name="language" type="image" value="pl" src="/flags/flag_pl.jpg" onclick="this.form.submit()" title="Polish" />

<input name="language" type="image" value="ro" src="/flags/flag_ro.jpg" onclick="this.form.submit()" title="Romanian" />

</form>

Edit: Спасибо Брайану и Локку, это решило мою проблему.

Жаль, что я не читал его до того, как написал это длинное и ужасное исправление:

{% load i18n %}
<form name="lang" action="{{ i18n_prefix }}setlang/" method="post">{% csrf_token %}
<input name="next" type="hidden" {% if redirect %}value="{{ redirect }}"{% endif %} />
<input name="language" type="hidden" >
{% for lang in LANGUAGES %}
<a href="#" onclick="javascript: document.forms['lang'].language.value ='{{ lang.0 }}'; document.forms['lang'].submit();"><img src="{{ flags_url }}flag_{{ lang.0 }}.jpg" title="{% trans lang.1 %}"></a>
{% endfor %}
</form>

Ответы [ 2 ]

2 голосов
/ 27 сентября 2010

Я почти уверен, что вам не нужен атрибут onclick="this.form.submit()" для <input type="image">. По умолчанию они должны быть активными.

0 голосов
/ 27 сентября 2010

в простом JavaScript -> onclick = "this.parent.parent.submit ()"

jQuery -> onclick = "jQuery (this) .parents ('form'). Submit ()"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...