diff --git a/xiaomusic/static/setting.html b/xiaomusic/static/setting.html index ad2cb9f..1568d50 100644 --- a/xiaomusic/static/setting.html +++ b/xiaomusic/static/setting.html @@ -6,6 +6,14 @@ + + +

小爱音箱设置面板 @@ -14,6 +22,14 @@ )


+ +
+ +
+
+
+
+
@@ -21,12 +37,6 @@ - - - - - - diff --git a/xiaomusic/static/setting.js b/xiaomusic/static/setting.js index e0e5692..3d1744e 100644 --- a/xiaomusic/static/setting.js +++ b/xiaomusic/static/setting.js @@ -16,48 +16,63 @@ $(function(){ }); }; - const updateSelectOptions = (selectId, optionsList, selectedOption) => { - const select = $(selectId); - select.empty(); - optionsList.forEach(option => { - select.append(new Option(option, option)); + function updateCheckbox(selector, mi_did_list, mi_did, mi_hardware_list) { + // 清除现有的内容 + $(selector).empty(); + + // 将 mi_did 字符串通过逗号分割转换为数组,以便于判断默认选中项 + var selected_dids = mi_did.split(','); + + // 遍历传入的 mi_did_list 和 mi_hardware_list + $.each(mi_did_list, function(index, did) { + // 获取硬件标识,假定列表是一一对应的 + var hardware = mi_hardware_list[index]; + + // 创建复选框元素 + var checkbox = $('', { + type: 'checkbox', + id: did, + value: `${did}|${hardware}`, + class: 'custom-checkbox', // 添加样式类 + // 如果mi_did中包含了该did,则默认选中 + checked: selected_dids.indexOf(did) !== -1 + }); + + // 创建标签元素 + var label = $('