Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как получить значение в select по двум параметрам (https://javascript.ru/forum/jquery/85095-kak-poluchit-znachenie-v-select-po-dvum-parametram.html)

Jimy 06.04.2023 07:44

Как получить значение в select по двум параметрам
 
Добрый день!
У меня в option есть дополнительный атрибут data-price. Допустим, 100 Как мне сделать option selected по значениям сразу двух параметров. Просто по value получается:
let id=20;
$('#id_move_update option[value="' + id + '"] ').prop('selected', true)

А как сделать selected для value=20 и data-price=100? Потому что могут быть option c
value=20 и data-price=100,
value=20 и data-price=200 и т.д.,
Спасибо!

рони 06.04.2023 07:57

Jimy,

let id=20, num = 200;
document.querySelector('#id_move_update option[value="' + id + '"][data-price="'+num+'"]').selected = true;

Jimy 06.04.2023 10:51

Спасибо! Пробую по Вашему совету. Но вот незадача - я получаю массив на бэкенде из Python(Django) и передаю его через ajax в шаблон
Массив примерно такой:
[{'id': 487, 'oper': 3, 'iddoc_id': 413, 'title_id': 69, 'price': 44.8,}]
Потом по клику на кнопке получаю значения 'title_id' и 'price', записываю их в переменные, получаю соответственно 69 и 44.8
Но если посмотреть код страницы, то в шаблоне у option data-price имеет значение 44,8
<option value="69" class="text-start"  data-count=48,0
            data-price=44,8
            >Саморез Цена: 44,8 руб; На складе 48,0 шт.
            </option>

Вот как мне преобразовать значения переменных и заменить точку на запятую?

рони 06.04.2023 14:36

Jimy,

num = num.replace('.', ',');


Часовой пояс GMT +3, время: 07:11.