refreshSpecifiedList.html 3.32 KB
<form class="r4">
    <div class="fgroup" data-prop="appHomepageId" required>
        <label>{{SystemEnv.getHtmlNoteName(4263)}}</label><!--选择页面:-->
        <select id="ref-spec-sel" data-placeholder="{{SystemEnv.getHtmlNoteName(5131)}}"><!--请选择目标页面-->
            <option></option>
            {{
                items.reduce(function(prev, item) {
                    if(item.ishide == 1) {
                        return prev;
                    }
                    var temp = "<option value='" + item.id + "'>" + item.uiname + "</option>"
                    return prev + temp;
                }, "")
            }}
        </select>
    </div>
    <div class="fgroup" data-prop="listId">
        <label>{{SystemEnv.getHtmlNoteName(4420)}}</label><!--选择列表:-->
        <select id="ref-spec-mecSel" data-placeholder="{{SystemEnv.getHtmlNoteName(5132)}}"><!--如果目标页面上只有一个列表,可以缺省-->
            <option></option>
        </select>
    </div>
    <div class="fgroup" id="ref-spec-params" data-params="string" data-prop="listparams">
        <label>{{SystemEnv.getHtmlNoteName(5133)}}</label><!--过滤条件:-->
        <div class="f-params normal">
            <div>
                <input class="f-params-key" type="text" placeholder="{{SystemEnv.getHtmlNoteName(5113)}}"/><!--参数名称-->
                <span>=</span>
                <input class="f-params-value" type="text" placeholder="{{SystemEnv.getHtmlNoteName(5114)}}"/><!--参数值-->
                <span class="f-add" data-operation="addParams"></span>
            </div>
        </div>   
        <div class="f-params sqlwhere hide">
            <div>
                <input class="f-params-key" value="sqlwhere" type="text"/>
                <span>=</span>
                <input class="f-params-value" type="text" placeholder="{{SystemEnv.getHtmlNoteName(5134)}}"/><!--sql过滤条件,如t1.type=1-->
                <span class="f-add" data-operation="addParams"></span>
            </div>
        </div>
    </div>
    <script type="text/javascript">
        (function() {
            $("#ref-spec-sel").on("change", function() {
                var pageid = $(this).val();

                mecHelper.getMecsByPageid(pageid, mecHelper.isList)
                    .then(function(mecHandlers) {
                    	var html = mecHandlers.reduce(function(prev, mecHandler) {
                            if(!mecHelper.isList(mecHandler.type)) return prev;
                            prev += "<option data-type='" + mecHandler.type +"' value='"+ mecHandler.id + "'>" + mecHandler.text + "</option>";
                            return prev;
                        }, '');
                    	$("#ref-spec-mecSel").html(html).triggerHandler("change");
                    });
            });
            
            $("#ref-spec-mecSel").on("change", function() {
                var type = $(this).find(":selected").data("type"),
                    $params = $("#ref-spec-params"), className;
                
                if(mecHelper.isParamsOnly(type)) {
                    className = ".sqlwhere";
                } else {
                    className = ".normal";
                }

                $params.find(className).removeClass("hide").siblings(".f-params").addClass("hide");
            });
        })()
    </script>
</form>