«

inCombobox、initCombobox例子

发布于 阅读:204 HTML


/**
 * 
 */
function addSelect(sStr,divId){
    var slect={
            selectName:sStr 
    }
    $.ajax({
        type :"post",
        url : "getSelect.action",
        data :  slect,
        dataType : "json",
        success : function(data) {
            var obj = JSON.parse(data);
            var htmlSelect =  "<select id='"+divId+"T' style='width:123px'>";
            for(var i =0;i<obj.length;i++){
                htmlSelect = htmlSelect +   "<option value ='"+obj[i].selectValue+"'>"+obj[i].selectText+"</option>";
            }
            htmlSelect = htmlSelect +   "<option value =''></option>";
            htmlSelect = htmlSelect + "</select>";
            $("#"+divId).append(htmlSelect);
            },
        error : function() {
            alert('加载失败');

        }
    });
}
function addSelectnotNull(sStr,divId){
    var slect={
            selectName:sStr 
    }
    $.ajax({
        type :"post",
        url : "getSelect.action",
        data :  slect,
        dataType : "json",
        success : function(data) {
            var obj = JSON.parse(data);
            var htmlSelect =  "<select id='"+divId+"T' style='width:123px'>";
            for(var i =0;i<obj.length;i++){
                htmlSelect = htmlSelect +   "<option value ='"+obj[i].selectValue+"'>"+obj[i].selectText+"</option>";
            }
            htmlSelect = htmlSelect + "</select>";
            $("#"+divId).append(htmlSelect);
            },
        error : function() {
            alert('加载失败');

        }
    });
}
function testP(hd){
    console.log(JSON.stringify(hd))
}
function initCombobox(id,code,isX){
    $.ajax({
        type : "post",
        url : 'getSelect.action?selectName='+code,
        data :  {},
        dataType : "json",
        success : function(data) {
            var obj = JSON.parse(data);
            $('#'+id).combobox({
                data:obj,
                method:'post',
                panelHeight:200,//设置为固定高度,combobox出现竖直滚动条
                valueField:'selectValue',
                textField:'selectValue',
                multiple:true,
                formatter: function (row) { //formatter方法就是实现了在每个下拉选项前面增加checkbox框的方法
                   var opts = $(this).combobox('options');
                return '<input type="checkbox" class="combobox-checkbox">' + row[opts.textField]
                },
                onLoadSuccess: function () {  //下拉框数据加载成功调用
                    var opts = $(this).combobox('options');
                    var target = this;
                    var values = $(target).combobox('getValues');//获取选中的值的values
                    $.map(values, function (value) {
                        var el = opts.finder.getEl(target, value);
                        el.find('input.combobox-checkbox')._propAttr('checked', true); 
                    });
                },
                onSelect: function (row) { //选中一个选项时调用
                    var opts = $(this).combobox('options');
                    //获取选中的值的values
                    $("#"+id).val($(this).combobox('getValues'));

                    //设置选中值所对应的复选框为选中状态
                    var el = opts.finder.getEl(this, row[opts.valueField]);
                    el.find('input.combobox-checkbox')._propAttr('checked', true);
                },
                onUnselect: function (row) {//不选中一个选项时调用
                    var opts = $(this).combobox('options');
                    //获取选中的值的values
                    $("#"+id).val($(this).combobox('getValues'));

                    var el = opts.finder.getEl(this, row[opts.valueField]);
                    el.find('input.combobox-checkbox')._propAttr('checked', false);
                }
            });
            if(isX=='true'){
            $("#"+id).combobox('setValues', obj[0].selectValue)
            }
        },
        error : function() {
            alert("系统异常,请稍后重试!");
        }
    }); 

};
function inCombobox(id,code,isX){
    $.ajax({
        type : "post",
        url : 'getSelect.action?selectName='+code,
        data :  {},
        dataType : "json",
        success : function(data) {
            var obj = JSON.parse(data);
            var value = "";
            //加载下拉框复选框
            $('#'+id).combobox({
                data:obj,
                method:'post',
                panelHeight:200,//设置为固定高度,combobox出现竖直滚动条
                valueField:'selectValue',
                textField:'selectValue',
              });
            if(isX=='true'){
            $("#"+id).combobox('setValues', obj[0].selectValue)
            }
        },
        error : function() {
            alert("系统异常,请稍后重试!");
        }
    }); 

};
function inCombobox2(id,code,isX){
    $.ajax({
        type : "post",
        url : 'getSelect.action?selectName='+code,
        data :  {},
        dataType : "json",
        success : function(data) {
            var obj = JSON.parse(data);
            var value = "";
            //加载下拉框复选框
            $('#'+id).combobox({
                data:obj,
                method:'post',
                panelHeight:200,//设置为固定高度,combobox出现竖直滚动条
                valueField:'selectValue',
                textField:'selectText',
              });
            if(isX=='true'){
            $("#"+id).combobox('setValues', obj[0].selectValue)
            }
        },
        error : function() {
            alert("系统异常,请稍后重试!");
        }
    }); 

};
function inComboboxJSON(id,code,isX){
    $.ajax({
        type : "post",
        url : 'jsp/json/'+code+".json",
        data :  {},
        dataType : "json",
        success : function(data) {
            var value = "";
            //加载下拉框复选框
            $('#'+id).combobox({
                data:data,
                method:'post',
                panelHeight:200,//设置为固定高度,combobox出现竖直滚动条
                valueField:'selectValue',
                textField:'selectText',
              });
            if(isX=='true'){
            $("#"+id).combobox('setValues', data[0].selectValue)
            }
        },
        error : function() {
            alert("系统异常,请稍后重试!");
        }
    }); 

};

javascript