(ddId)
| 245 | } |
| 246 | |
| 247 | function updateMsdLabel(ddId) { |
| 248 | const dd = document.getElementById(ddId); |
| 249 | if (!dd) return; |
| 250 | const all = dd.querySelectorAll('.msd-item input'); |
| 251 | const checked = dd.querySelectorAll('.msd-item input:checked'); |
| 252 | const label = dd.querySelector('.msd-label'); |
| 253 | if (!label) return; |
| 254 | if (checked.length === 0) label.textContent = '未选择'; |
| 255 | else if (checked.length === all.length) label.textContent = `全部 (${all.length})`; |
| 256 | else label.textContent = Array.from(checked).map(c => c.nextElementSibling.textContent).join(', '); |
| 257 | } |
| 258 | |
| 259 | // 获取自定义多选下拉中选中的服务 ID 列表 |
| 260 | function getSelectedServiceIds(container) { |
no outgoing calls
no test coverage detected