riku
2024-02-04 b6ce6a9739d7114ee740981cbbeabbf1e7e10f28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
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 = $("<input type='checkbox' id='" + elementId + i + "' value='" + e.value + "' />")
      var label = $("<label for='" + elementId + i + "'>" + e.label + "</label>")
      label.css('margin', '0')
      label.css('margin-left', '4px')
      // label.css('background-color', 'black')
      // checkbox.css('background-color', 'white')
      checkbox.attr('checked', checked)
      checkbox.on('click', onclickListener)
 
      var item = $('<div></div>')
      item.css('padding-right', '0.5rem')
      item.css('display', 'flex')
      item.css('align-items', 'center')
      item.append(checkbox)
      item.append(label)
 
      check.append(item)
    }
  },
 
  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 = $("<input type='radio' name='" + name + "' id='" + "r-" + elementId + "_" + i + "' value='" + e.value + "," + e.name + "'/>")
      var label = $("<label for='" + "r-" + elementId + "_" + i + "'>" + e.label + "</label>")
      label.css('margin', '0')
      label.css('margin-left', '4px')
      // label.css('background-color', 'black')
      // radiobox.css('background-color', 'white')
      radiobox.attr('checked', checked)
      radiobox.on('click', onclickListener)
      radioboxlist.push(radiobox)
 
      var item = $('<div></div>')
      item.css('padding-right', '0.5rem')
      item.css('display', 'flex')
      item.css('align-items', 'center')
      item.append(radiobox)
      item.append(label)
 
      radio.append(item)
    }
  }
}