• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Jquery

  • Автор темы Isys
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

Isys

Всем привет!
Возникла следующая проблема:
Есть два select-а, один - марка авто, второй - модель авто. Select с моделями генерируется в зависимости от выбранной марки c помощью инструментов jquery

brand.js
Код:
$(document).ready(function() {
$('select#id_brand').change(function() {
var url = '/ajax/brand/';
$.getJSON(url, {id: $(this).val()}, function(j) {
var options = '';
for (var i = 0; i < j.length; i++) {
options += '<option value="' + j[i].id + '">' + j[i].name + '</option>';
}
$('select#id_model').html(options);
$('select#id_model').removeAttr('disabled');
});
});
});

ajax_brand.html
Код:
[{% if entries %}
{id:'', name:''},
{% for entry in entries %}
{id:{{ entry.id }},name:'{{ entry.name }}'},
{% endfor %}
{% endif %}]

views.py
Код:
def ajax_brand(request):
if request.GET['id']:
return render_to_response('ad/ajax_brand.html', {
'entries': Model.objects.filter(brand=request.GET['id']).order_by('name')
})

Так вот, все это прекрасно отрабатывает во всех броузерах кроме IE, если кто-нибудь догадывается в чем может быть проблема - буду очень благодарен совету.

Используется Python 2.5.1 (win32) + Django(trunc версия)

P.S. Прошу сильно не обижатся пхп-ков за то что разместил сдесь примеры из питона
 
G

Gisma

1. Попробуйте вставлять опции через DOM
2. $('select#id_model').removeAttr('disabled'); Судя по этой строчке, select изначально disabled поэтому добавление не должно работать
3. ПхП-шники не обижаются, они изучают вражеские технологии :)
 
I

Isys

ошибка найдена и обезврежена здесь:

ajax_brand.html
Код:
[{% if entries %}
{id:'', name:''},
{% for entry in entries %}
{id:{{ entry.id }},name:'{{ entry.name }}'}
{% endfor %}
{% endif %}]

в конце строчки {id:{{ entry.id }},name:'{{ entry.name }}'} была лишняя запятая :)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!