Понадобилось выводить несколько однотипных форм за раз. Количество и данные брались из БД. Стал использовать formset'ы (наборы форм). Formset - в шаблонах по сути форма, где элементы формы разделяются автоматическими префиксами типа form-0-, form-1- и т.д. В представлении (view) это список форм. Удобная штука.
Столкнулся с проблемой при обращении к элементам формы через JavaScript. Например, надо было по клику почистить элемент формы. Написал сначала так:
{% for form in formset %}в скрипте:
<span class="hand" onclick="clear({{forloop.counter0}})">Сброс</span>
.....
function clear(number)Но JavaScript'у не понравились минусы в названии элемента формы. Переписал по-другому:
{
a = "form.form-"+number+"-f_na_timer.value=\"\";";
eval(a);
}
function clear(number)Всё работает.
{
a = "form[\"form-"+number+"-f_na_timer\"].value=\"\";";
eval(a);
}
Надеюсь гуру меня поправят, если что-то я делаю некорректно.
0 комментариев:
Отправить комментарий