связь select с checkbox
Всем привет! Через изменение <select> связал с ajax получением результата ответа в формате json.
я получаю массива формате <select> <option value>Пакет 1</option> <option value>Пакет 2</option> </select> При выборе Пакет 1 [{"id":"1", "predmet":"флешка"},{"id":"2", "predmet":"дискета"},{"id":"2", "predmet":"дисковод"}] При выборе Пакет 2 [{"id":"1", "predmet":"флешка"},{"id":"2", "predmet:"дискета"}] и у меня есть группа checkboxov <input type="checkbox" id='флешка'/>Флешка <input type="checkbox" id='дискета'/>дискета <input type="checkbox" id='Дисковод'/>дисковод Соответсвенно при каждом выборе надо чтобы выбирались только те которые есть в массиве.У меня выбирает но при выборе Пакет 2 checkbox Дисковод так же остается отмеченным. вод код ajax при success: var asd=JSON.parse(data); for (var i = 0; i < asd.length; i++) { var paket=asd[i].predmet; if($("#"+paket).length) { $("#"+paket).attr("checked",true); }else { //$("input:checkbox").removeAttr("checked"); } } Как сделать чтобы при каждом выборе селект отмечались тока те checbox которые есть в массиве..... а не просто шло добавлеие т.е. при выборе пакета 1 он отмечает все три при выборе пакета 2 также все остаеться отмеченным хотя надо отметить только 2 |
AlexSergeev1990,
перед циклом сбросить все, в цикле только установка. |
Цитата:
Цитата:
|
AlexSergeev1990,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script> $(function() { data = '[{"id":"1", "predmet":"флешка"},{"id":"2", "predmet":"дискета"},{"id":"2", "predmet":"дисковод"}]' var asd=JSON.parse(data); $(".check").prop({checked: false}); asd.forEach(function(el) { el = document.querySelector("#"+el.predmet); el && el.checked = true }); }); </script> </head> <body> <input type="checkbox" id='флешка'/ class="check" >Флешка <input type="checkbox" id='дискета' class="check"/>дискета <input type="checkbox" id='дисковод' class="check"/>дисковод </body> </html> |
Спасибо тебе большое!!!!))))
:thanks: :) :agree: [quote=рони;460003]AlexSergeev1990,
Даже не представляешь что только не перепробовал) То что нужно) огроменное спасибо!!!) |
Часовой пояс GMT +3, время: 13:35. |