Страницы

Поиск по вопросам

воскресенье, 8 марта 2020 г.

Извлечь данные из массива при выборе радиокнопки

#php #javascript #html


Есть массив:

$arr = [
   ['id'=>101, 'note'=>'Содержание_1'],
   ['id'=>108, 'note'=>'Содержание_2'],
   ['id'=>258, 'note'=>'Содержание_3']
];


На странице php генерируются радиокнопки значение которых равно элементу 'id' из
массива $arr.

Вот примерный код:

 
 






101, 'note'=>'Содержание_1'),
    array('id'=>108, 'note'=>'Содержание_2'),
    array('id'=>258, 'note'=>'Содержание_3')
);
?>
punkt 1
punkt 2
punkt 3
Сейчас у меня при выборе радиокнопки в div class="note" попадает значение 'id'. Можно ли с помощью javascript извлечь значение 'note' из массива $arr, у которого 'id' равно значению выбранной радиокнопки и вывести в div class="note"


Ответы

Ответ 1



Можно сделать таким образом, но все данные будут видны в DOM'e punkt 1

Ответ 2



Вы не сможете извлечь данные из php-массива по той простой причине, что этот массив существует только в момент исполнения php-скрипта. Как только скрипт отработал и отдал отрендеренную страницу веб-серверу для передачи клиентскому браузеру - массив исчезает. (не будем сейчас рассматривать кеширования и сессии, так как по сути те-же яйца, только в профиль) Решений тут ровно два: Отдавать эти данные на клиент. Либо как атрибуты DOM, либо как массив JS. При выборе радиокнопки делать запрос к бэкенду.

Ответ 3



А в чем проблема при получении id сделать вызов php скрипта через ajax, передать в запросе id и получить соответствующее значение note? В данном случае я вижу только такое решение, при условии, что вы не хотите выводить значение note на страницу. Другое решение предложил @lyhoshva - использовать data-class, также возможно выводить значение note в input type="hidden"

Комментариев нет:

Отправить комментарий