Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267

Фильтрация в выпадающем списке

22.04.2019, 09:02. Показов 5852. Ответов 21

Студворк — интернет-сервис помощи студентам
подскажите пожалуйста как сделать что что бы при выборе данных из выпадающего списка из базы подтягивались другие данные относящиеся к моему выбору из списка
models.py
Python
1
2
3
4
5
6
class Wardrobes(models.Model):
    title = models.CharField(max_length=120)# наименование материала
    quantity_or_meter = models.DecimalField(max_digits=9, decimal_places=2)
    price = models.DecimalField(max_digits=9, decimal_places=2)
    def __str__(self):
        return self.title
так создаю таблицу
HTML5
1
2
3
4
5
6
7
8
9
10
11
<table id="node1" border="2" class="table-bordered table-dark">
      <tr>
<input id="addRow1" type="image" style="width:5%;height:5%" src='{% static "image/knopka.png" %}'class="btn btn-success"><a>iшкафы</a>
      </tr>
</table>
<script >
document.getElementById("addRow").onclick = function() {
    var row = document.createElement("tr");
    row.innerHTML ='<td><select  name="hero">{% for wardrobes in wardrobes %}<option>{{wardrobes.title}}</option>{%endfor%}</select></td><td><div contenteditable >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>';
    document.getElementById("node").appendChild(row);
}
Миниатюры
Фильтрация в выпадающем списке   Фильтрация в выпадающем списке  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.04.2019, 09:02
Ответы с готовыми решениями:

Фильтрация в выпадающем списке
Есть простой выпадающий список. Данные берутся запросом. Хотелось бы вводить какие-то значения - и в списке, для выбора должны появляться...

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

Подсказка в выпадающем списке
Добрый вечер! Столкнулся с такой проблемой. На Форме имеется combobox, в котором находится массив данных, как сделать чтобы при выборе...

21
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
22.04.2019, 09:31
Подгрузка полей в форму по выбору значения из выпадающего списка
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
22.04.2019, 10:35  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
Подгрузка полей в форму по выбору значения из выпадающего списка
я так понял он данные из js берет а не из базы или я не прав?
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
22.04.2019, 10:43
Цитата Сообщение от Lastik228 Посмотреть сообщение
я так понял он данные из js берет а не из базы или я не прав?
Данные не могут быть в js, это язык программирования...
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
22.04.2019, 11:02  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
Данные не могут быть в js, это язык программирования...
сори неправильно выразился. что означает change?

JavaScript
1
2
3
$('#elem').on('change', function() {
  $('#id_name').val(this.value)
})
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
22.04.2019, 12:13
Lastik228, изменение в этом элементе
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
22.04.2019, 14:23  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
изменение в этом элементе
подскажи что не так? как правильно его добавить?
подключаю скачанный jquery
HTML5
1
2
3
<link rel="stylesheet" href='{% static "js/jquery-3.0.0.min.js" %}'>
<link rel="stylesheet" href='{% static "js/jquery-migrate-1.4.1.min.js" %}'>
<link rel="stylesheet" href='{% static "js/bootstrap.min.js" %}'>
форма из js с добавление таблицы и данных
JavaScript
1
2
3
4
5
document.getElementById("addRow1").onclick = function() {
    var row = document.createElement("tr");
    row.innerHTML ='<td><select id="elem"name="hero1">{% for equipments in equipments %}<option>{{equipments.title}}</option>{%endfor%}</select></td>{% for equipments in equipments %}<td for="Price"><div contenteditable >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>{%endfor%}';
    document.getElementById("node1").appendChild(row);
}
JavaScript
1
2
3
$('#elem').on('change', function() {
  $('#Price').val(this.value)
})
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
22.04.2019, 15:35
Lastik228, покажите отрендеренный хтмл шаблон страницы.
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
23.04.2019, 07:41  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
покажите отрендеренный хтмл шаблон страницы.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<html><head>
 
     <link rel="stylesheet" href="/static/css/bootstrap.css">
<link rel="stylesheet" href="/static/css/menu.css">
<link rel="stylesheet" href="/static/js/jquery-3.0.0.min.js">
<link rel="stylesheet" href="/static/js/jquery-migrate-1.4.1.min.js">
<link rel="stylesheet" href="/static/js/bootstrap.min.js">
 
    <title></title>
</head>
 
      <body><h1 style="text-align: center;">Калькулятор стандарта СКС</h1>
 
<div id="tableWrap">
  <table class="table-bordered table-dark">
    <tbody><tr>
      <td>количество рабочих мест</td>
      <th><div contenteditable="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></th>
    </tr>
    <tr><td>средняя зарплата</td>
      <td><div contenteditable=""></div></td>
    </tr>
    <tr><td>дл клк</td>
      <td><div contenteditable=""></div></td>
    </tr>
    <tr><td>%чего то</td>
      <td><div contenteditable=""></div></td>
    </tr>
  </tbody></table>
</div>
<h1></h1>
 <input id="addRow" type="image" style="width:5%;height:5%" src="/static/image/knopka.png" class="btn btn-success"><a>Шкафы</a><table id="node" border="1" class="table-bordered table-dark">
      <tbody><tr>
 
</tr>
</tbody><tr><td><select id="elem" name="hero"><option>1</option><option>ыувапнрг</option><option>Средняя длина кабеля (от шкафа до рабочего места), м</option></select></td><tdfor="price"><div contenteditable="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></tdfor="price"></tr></table>
<h1></h1>
<input id="addRow1" type="image" style="width:5%;height:5%" src="/static/image/knopka.png" class="btn btn-success"><a>оборудование</a><table id="node1" border="2" class="table-bordered table-dark">
      <tbody><tr>
 
      </tr>
</tbody><tr><td><select id="elem" name="hero1"><option>re</option><option>erdghj</option></select></td><td for="Price"><div contenteditable="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td><td for="Price"><div contenteditable="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td></tr></table>
 <h1></h1><table class="table-bordered table-dark">
  <tbody>
    
    <tr>
      <td scope="row">наценка</td>
      <td><div contenteditable="">&nbsp;&nbsp;1,3&nbsp;&nbsp;</div></td>
    </tr>
  </tbody>
  </table>
  <h1></h1>
<input type="button" class="btn btn-success" value="Расчет" onclick="addition();"><br>
 <h1></h1>
 
  <table class="table-bordered table-dark">
    <tbody><tr>
      <th>эконом</th>
      <th><div contenteditable="">&nbsp;&nbsp;&nbsp;&nbsp;</div></th>
    </tr>
    <tr><td>оптима</td>
      <td><div contenteditable=""><div id="result"></div></div></td>
    </tr>
    <tr><td>премиум</td>
      <td><div contenteditable=""></div></td>
    </tr>
    <tr><td>лофт</td>
      <td><div contenteditable=""></div></td>
    </tr>
  </tbody></table>
 
  <h1></h1>
  <div class="" style="text-align: center;">
  <button type="button1" class="btn btn-success">Вывод в Excel</button>
</div>
<script>
document.getElementById("addRow").onclick = function() {
    var row = document.createElement("tr");
    row.innerHTML ='<td><select id="elem"name="hero"><option>1</option><option>ыувапнрг</option><option>Средняя длина кабеля (от шкафа до рабочего места), м</option></select></td><tdfor="Price"><div contenteditable >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>';
    document.getElementById("node").appendChild(row);
}
 
document.getElementById("addRow1").onclick = function() {
    var row = document.createElement("tr");
    row.innerHTML ='<td><select id="elem" name="hero1"><option>re</option><option>erdghj</option></select></td><td for="Price"><div contenteditable >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td><td for="Price"><div contenteditable >&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>';
    document.getElementById("node1").appendChild(row);
}
 
function addition() {
      var a = parseInt(document.getElementById('a').td);
      var b = parseInt(document.getElementById('b').td);
 
      if (isNaN(a)==true) a=0;
      if (isNaN(b)==true) b=0;
 
      var c = a + b;
 
      document.getElementById('result').innerHTML = a + " + " + b + " = " + c;
    }
 
$('#elem').on('change', function() {
  $('#Price').val(this.value)
})
 
$(function(){
    $('button1').click(function(){
        var url='data:application/vnd.ms-excel,' + encodeURIComponent($('#tableWrap').html()) 
        location.href=url
        return false
    })
})
</script>
 
 
</body></html>
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
23.04.2019, 11:41
Lastik228, непонятно, какие данные вы хотите выводить для "Средней длины кабеля", например? Они есть у Вас на странице? Или их нужно с базы получать.
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
23.04.2019, 11:51  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
"Средней длины кабеля"
это выводится в select мне же надо при выборе например чего то другого из select подтягивались данные из базы а это именно Quantity or meter и Price и становились рядом с выбранным элементом.
Миниатюры
Фильтрация в выпадающем списке  
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
23.04.2019, 12:23
Lastik228, ну если не хочешь заранее подгружать все данные на страницу, тогда формируй запрос, обрабатывай его и возвращай json обратно с нужными тебе данными.
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
23.04.2019, 12:24  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
заранее подгружать все данные на страницу
как их заранее подгрузить?
есть манул какой ни будь или пример?
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
23.04.2019, 12:38
Во вьюхе
Python
1
wardrobes = Wardrobes.objects.all()
В шаблоне
HTML5
1
2
3
4
{% for wardobe in wardobes %}
    <span class="wardobe q_m">{{ wardobe.quantity_or_meter }}</span>
    <span class="wardobe price">{{ wardobe.price }}</span>
{% endfor %}
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
23.04.2019, 13:16  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
В шаблоне
куда именно вставлять?

Добавлено через 31 минуту
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
В шаблоне
все допер сори просто долго думаю очень . нет это мне не сильно подходит так как данных будет много а клиенту нужно будет выбрать только несколько.есть мануал по второму виду как вы предложили?там где нужно формировать запрос, обрабатывать его и возвращать json обратно с нужными данными.
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
23.04.2019, 13:25
Lastik228, насчёт мануалов не знаю, но вот неплохой пример.
https://youtu.be/dx6uXEuPtw4?t=476
1
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
23.04.2019, 13:33  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
но вот неплохой пример
примерно понял окей.можешь так же с этим вопросом помочь Несколько таблиц в один Excel
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
23.04.2019, 13:41
Lastik228, не знаю, с таким не сталкивался. но очевидно вам нужно сначала определить все эти таблицы в одну переменную и затем в цикле пройтись по ним и сохранить в один эксель файл.

Добавлено через 51 секунду
Если у вас сохраняет только одну таблицу, то либо вы определили всего одну таблицу, либо вы просто не прошлись по всем таблицам.
0
1 / 1 / 1
Регистрация: 20.04.2017
Сообщений: 267
25.04.2019, 13:25  [ТС]
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
но вот неплохой пример
я примерно написал код но он выводит немного не так. при выборе из select я ввожу данные в консоль а он выводит не числа а только по одному элементу.это выводиться в консоль [1.0, 234.0, 31.0] и при выборе из select для первого элемента он мне выводит "[" под вторым "1" и под третьим "."

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<script type="text/javascript">
  var v = "{{ prices }}";
    function Add_option_to_select()
    {
       var CountryObj = document.getElementById("SelectMyLove");
       var ResortObj = document.getElementById("resort");
       var selind = CountryObj.options.selectedIndex;
       console.log(v)
        ResortObj.value = v[selind];
 }
 
  </script>
 
 
<table>
<tr><td valign="top">
<br /><br />
<SELECT name="SelectMyLove" id="SelectMyLove" onChange="Add_option_to_select();">
{% for wardrobe in wardrobes %}
      <option VALUE="0">{{wardrobe.title}}</option>
    {%endfor%}
</SELECT>
</td>
<td valign="top">
<br /><br />
<input type="text" id="resort" readonly/>
</td>
</tr>
 
</table>
Миниатюры
Фильтрация в выпадающем списке  
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
25.04.2019, 13:47
Lastik228, скидываете отрендеренный хтмл шаблон страницы, а не джанговский.
и я не увидел у вас запроса к серверу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.04.2019, 13:47
Помогаю со студенческими работами здесь

Значение в выпадающем списке
Добрый день. Есть калькулятор. Там есть поля для ввода цифр обычные, и есть один выпадающий список. Вопрос, почему значение из...

Псевдоэлементы в выпадающем списке
Здравствуйте! Ситуация такая: есть многоуровневый список, выпадающий при нажатии на строчку (реализовано с помощью скрипта). На одном...

Поиск в выпадающем списке
Подскажите можно ли фильстровать выпадающий список?

Ошибка в выпадающем списке
Здравствуйте. Есть выпадающий список, но при выборе нужного значения, перескакивает на самую последнюю запись. (PHP 8.0/8.1) ...

Не отображается в выпадающем списке
Здравствуйте, начал просматривать видеоурок посвященный АДО НЭТ. Сразу столкнулся с проблемой. Скорее всего у меня чего то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru