增加公交线路和编码功能
This commit is contained in:
@@ -172,15 +172,33 @@ function onFieldCheckboxChange(cb) {
|
||||
const item = cb.closest('.checkbox-item');
|
||||
if (item) item.classList.toggle('checked', cb.checked);
|
||||
|
||||
// 获取当前已选字段的顺序(从字段顺序列表中获取)
|
||||
const currentOrder = getSelectedFieldsOrder();
|
||||
|
||||
// 获取所有勾选的字段
|
||||
const fieldsList = document.getElementById('field-list');
|
||||
const checkedFields = Array.from(fieldsList.querySelectorAll('input:checked')).map(c => c.value);
|
||||
const allCheckedFields = Array.from(fieldsList.querySelectorAll('input:checked')).map(c => c.value);
|
||||
|
||||
// 构建新的字段顺序:保留当前顺序,添加新勾选的字段,移除取消勾选的字段
|
||||
let newOrder = [];
|
||||
for (const fieldKey of currentOrder) {
|
||||
if (allCheckedFields.includes(fieldKey)) {
|
||||
newOrder.push(fieldKey);
|
||||
}
|
||||
}
|
||||
// 添加新勾选的字段(不在当前顺序中的)
|
||||
for (const fieldKey of allCheckedFields) {
|
||||
if (!newOrder.includes(fieldKey)) {
|
||||
newOrder.push(fieldKey);
|
||||
}
|
||||
}
|
||||
|
||||
// 保留当前求和字段的选择状态
|
||||
const sumFieldsList = document.getElementById('sum-fields-list');
|
||||
const currentSumFields = sumFieldsList ? Array.from(sumFieldsList.querySelectorAll('input:checked')).map(c => c.value) : [];
|
||||
|
||||
refreshSumFieldsList(checkedFields, currentSumFields);
|
||||
refreshSelectedFieldsOrder(checkedFields);
|
||||
refreshSumFieldsList(newOrder, currentSumFields);
|
||||
refreshSelectedFieldsOrder(newOrder);
|
||||
}
|
||||
|
||||
// 刷新已选字段顺序列表
|
||||
|
||||
Reference in New Issue
Block a user