cy
2022-06-21 129904537f66509f97b285e7eb4f42b3dc349dd0
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
65
[#macro checkbox name="" width="50%"  source={}  hiddenValue="" showValue=""]
<style type="text/css">
    ul{list-style:none;}
    .AutoComplete_Container{}
    .AutoComplete_Content{ position:absolute; padding:5px 40px 5px 12px; display:none; width:auto; max-width:${width}; overflow:scroll; background-color:#f1f1f1; border:1px solid #d0d0d0; }
    .AutoComplete_Content li{ margin:5px 7px; color:#444444; line-height:24px; }
    .AutoComplete_Content input{ padding-left:10px;}
</style>
<script type="text/javascript">
        $(function(){
            var _${name}_content = $("#_${name}_content");
            var _${name}_txt = $("#_${name}");
            _${name}_txt.focus(function(){
                _${name}_content.show();
                $(".AutoComplete_Content").each(function(){
                    if(this.id != "_${name}_content"){
                        $(this).hide();
                    }
                });
            });
            
            _${name}_txt.click(function(){
                return false;
            });
            
            _${name}_content.click(function(event){
                event.stopPropagation();
            });
            
            $(document).click(function(){
                _${name}_content.hide();
            });
            
            var eles = document.getElementsByName("_${name}_chb");
            for(var i=0;i<eles.length;i++){
                $(eles[i]).click(function(){
                    var val = "";
                    for(var j=0;j<eles.length;j++){
                        if(eles[j].checked == true){
                            val += $(eles[j]).next("label").html() +",";
                        }
                    }
                    document.getElementById("_${name}").focus();
                    document.getElementById("_${name}").value = val;  
                });
            }
        });
    </script>
<div class="AutoComplete_Container" id="AutoComplete_Container">
     <input readonly="readonly" class="input-text" style="width:${width};" value="${showValue}" type="text" name="_${name}" id="_${name}" />
<div class="AutoComplete_Content" id="_${name}_content">
    <ul>
    [#if FreeMarkerUtil.isSimpleHash(source)]
        [#list source?keys as key]
            <li><input type="checkbox" name="_${name}_chb" id="_${name}_${key_index}" value="${key}" [#if hiddenValue?contains(key)]checked="checked"[/#if] /><label for="_${name}_${key_index}">${source[key]}</label></li>
        [/#list]
    [#else]
        [#list source.keySet() as key]
            <li><input type="checkbox" name="_${name}_chb" id="_${name}_${key_index}" value="${key}" [#if hiddenValue?contains(key)]checked="checked"[/#if] /><label for="_${name}_${key_index}">${source.get(key)}</label></li>
        [/#list]
    [/#if]
    </ul>
</div>
 </div>
[/#macro]