var CheckBox = { newCheckBox: function(elementId, list, defaultChecked, callback, that) { var check = $('#' + elementId) check.empty() var onclickListener = function () { var checkbox = this callback(checkbox, that) } for (let i = 0; i < list.length; i++) { const e = list[i]; var checked = defaultChecked.indexOf(e.value) != -1 var checkbox = $("") var label = $("") label.css('margin', '0') label.css('margin-left', '4px') // label.css('background-color', 'black') // checkbox.css('background-color', 'white') checkbox.prop('checked', checked) checkbox.on('click', onclickListener) var item = $('
') item.css('padding-right', '0.5rem') item.css('display', 'flex') item.css('align-items', 'center') item.append(checkbox) item.append(label) check.append(item) } }, /** * 刷新复选框组的选择状态 * @param {*} elementId * @param {*} checkedList */ refreshCheckBox(elementId, checkedList){ var checkboxList = $(`#${elementId}`).find('input') for (let i = 0; i < checkboxList.length; i++) { const box = checkboxList[i]; const value = $(box).prop('value') $(box).prop('checked', checkedList.indexOf(parseInt(value)) != -1) } }, newRadioBox: function(elementId, name, list, defaultChecked, callback, that) { var radioboxlist = [] var radio = $('#' + elementId) radio.empty() var onclickListener = function () { var radiobox = this callback(radiobox, that) } for (let i = 0; i < list.length; i++) { const e = list[i]; var checked = defaultChecked.indexOf(e.value) != -1 var radiobox = $("") var label = $("") label.css('margin', '0') label.css('margin-left', '4px') // label.css('background-color', 'black') // radiobox.css('background-color', 'white') radiobox.prop('checked', checked) radiobox.on('click', onclickListener) radioboxlist.push(radiobox) var item = $('') item.css('padding-right', '0.5rem') item.css('display', 'flex') item.css('align-items', 'center') item.append(radiobox) item.append(label) radio.append(item) } } }