Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   помогите с синтаксисом (https://javascript.ru/forum/jquery/84735-pomogite-s-sintaksisom.html)

ufaclub 02.12.2022 14:39

помогите с синтаксисом
 
есть value=2 в коде как мне за место двойки поставить значение переменой url_color которая например равна 13

$('select#mark option[value=2]').prop('selected', true);




вот так не работает почему то

$('select#mark option[value=url_color]').prop('selected', true);


в что то обернуть нужно? (' или +) что то запутался ....

рони 02.12.2022 16:07

ufaclub,
$(`select#mark option[value=${url_color}]`).prop('selected', true);

ufaclub 02.12.2022 16:12

Спасибо!

ufaclub 02.12.2022 18:45

alert (url_cover);
//выведет 2

$('select#mark option[value=${url_cover}]').prop('selected', true);
$('select#mark option[value=${url_cover}]').trigger('change'); 

// НЕ переключит на   select#mark на  value=2 вообще без реакции


почему то не работает

${url_cover} - как двойка в этом условии

рони 02.12.2022 18:52

ufaclub,
<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
    </style>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <script>
        $(function() {
            $('select#mark').on('change', function() {
                alert(this.value);
            });
            let url_color = 2;
            $(`select#mark option[value=${url_color}]`).prop('selected', true);
            $('select#mark').trigger('change');
        });
    </script>
</head>
<body>
    <select name="" id="mark">
    <option value="test">test</option>
    <option value="2">2</option>
</select></body>
</html>

ufaclub 02.12.2022 18:53

хм... спасибо значит я где то ошибся. сейчас буду искать..

ufaclub 02.12.2022 18:56

странно через такую только конструкцию почему то сработало.

$('select#mark option[value="'+url_cover+'"]').prop('selected', true);


возможно дело в условиях выше.. в любом случае спасибо Вам за помощь!

voraa 02.12.2022 21:02

$('select#mark option[value=${url_cover}]').prop('selected', true);
$('select#mark option[value=${url_cover}]').trigger('change');

У вас кавычки неправильные. Нужно ` (на клавиатуре обычно там, где ~ и Ё), а не '
Почитайте про шаблонные строки
https://developer.mozilla.org/ru/doc...plate_literals

ufaclub 05.12.2022 09:29

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


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