Страница 1 из 1

Как изменить значение поля "Переключатели" с помощью jQuery?

Добавлено: 10 май 2023, 16:43
Lexxor2011
Здравствуйте уважаемые знатоки!
По сабжу может кто-то подскажет?
Есть поле "Переключатели" с тремя значениями на выбор, с id, условно: 1, 2 и 3.
Есть поле Ajax запрос в котором кодом требуется переключить переключатели в этом поле.
Пробовал таким образом:
$auto_num = "2";
echo '<script>$("#fields_922").val(' . $auto_num . ')</script>';
ничего не происходит. Есть подозрение, что с переключателями нужно другой метод использовать, возможно .append, но не соображу как.. :?

Re: Как изменить значение поля "Переключатели" с помощью jQuery?

Добавлено: 11 май 2023, 12:51
Lexxor2011
Нашел некоторое решение.
В JavaScript формы, который срабатывает при открытии, добавил следующее:
if($("#fields_517").val()==''){
$('input:radio[value=177]').prop('checked',true);
}
Логика приложения работает, что нужно происходит, то есть как бы нужная опция в чек-боксе выбрана, но на самой форме этот выбор не отражается, чек стоит на другой опции которая была "по умолчанию".
Как бы для работы приложения это не критично, но пользователь может запутаться и что-то не то нажать.
Может есть команда какая-то чтобы отображение чек-бокса обновить?

Re: Как изменить значение поля "Переключатели" с помощью jQuery?

Добавлено: 11 май 2023, 13:59
Lexxor2011
Либо вот такой вариант:
$("#fields_922_176").attr('checked', false);
$("#fields_922_177").attr('checked', true);
$("#fields_922_178").attr('checked', false);
Внутри кода страницы формы, атрибут меняется, и другой скрипт, который от этого зависит отрабатывает на все 100%,
Но на опции, которая выделена по умолчанию и отображается на форме как выделенный, там на тэге <span> указано class="checked":
<div class="radio" id="uniform-fields_922_176">
<span class="checked"><input name="fields[922]" id="fields_922_176" value="176" type="radio" class="field_922" data-raido-list="922" ul-class="list-column-4">
</span>
</div>
Отсюда вопрос, как кодом переставить class="checked" из этого элемента в другой с id="uniform-fields_922_177"?

Re: Как изменить значение поля "Переключатели" с помощью jQuery?

Добавлено: 11 май 2023, 15:38
Lexxor2011
Все нарыл, как сделать, оставляю тут, может кому пригодится. Хотя не уверен, что красиво, но работает! :)
if($("#fields_517").val()==''){
$("#fields_922_176").attr('checked', false);
$("#fields_922_176").parent().removeClass('checked');
$("#fields_922_178").attr('checked', false);
$("#fields_922_178").parent().removeClass('checked');
$("#fields_922_177").attr('checked', true);
$("#fields_922_177").parent().addClass('checked');
}