liyerui ligerComboBox下拉框中的树如何更换数据源

lyxiang123456 2015-09-20 11:02:34
下图是用ligerUI ligerComboBox做的一棵树,如何更新这棵树的数据源。

下面是js代码:
department = $("#department").ligerComboBox({
width: 150,
selectBoxWidth: 150,
selectBoxHeight: 150,
valueField: 'id',
textField: 'text',
treeLeafOnly: false,
initValue: obj.department_id,
tree: {
onSuccess: function () {
//var manager = $(".l-tree").ligerGetTreeManager();
//manager.clear();
},
url: '../data/department.ashx?Action=deptree&company_id=' + obj.company_id + '&rnd=' + Math.random(),
usericon: 'icon',
idFieldName: 'id',
checkbox: false
}
});
...全文
440 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyxiang123456 2015-09-21
  • 打赏
  • 举报
回复
api中没有更换数据源的呀。
DaveLeeCN 2015-09-21
  • 打赏
  • 举报
回复
http://api.ligerui.com/修改画树哪部分js代码的data数据
lyxiang123456 2015-09-21
  • 打赏
  • 举报
回复
按照@showbo 的思路解决了我的问题,下面是一个下拉列表联动一棵树的代码:

        $(function () {
            $.metadata.setType("attr", "validate");
            tpyzq.validate($(form1));

            $("form").ligerForm();

            if (getparastr("id")) {
                loadForm(getparastr("id"));
            }
        });


        function loadForm(id) {
            $.ajax({
                type: "GET",
                url: "../data/employee_view.ashx", 
                data: { Action: 'form', id: id, rnd: Math.random() }, 
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (result) {
                    var obj = eval(result);
                    for (var n in obj) {
                        if (obj[n] == "null" || obj[n] == null)
                            obj[n] = "";
                    }

                    $("#company").ligerComboBox({
                            width: 495,
                            url: "../data/company.ashx?Action=combo&rnd=" + Math.random(),
                            //emptyText: '(空)',
                            initValue: obj.company_id,
                            onSelected: function (company_id, company) {
                                change_department(company_id, company, obj.department_id);
                            }
                    });
                    $("#name").val(obj.name);
                    $("#sex").val(obj.sex); 
                }
            });
           
        }

        function change_department(company_id, company, department_id) {
            $("#d_department").html(" <input type='text' id='department' name='department'  ligerui='{width:196}' />");
            department = $("#department").ligerComboBox({
                width: 150,
                selectBoxWidth: 150,
                selectBoxHeight: 150,
                valueField: 'id',
                textField: 'text',
                treeLeafOnly: false,
                initValue: department_id,
                tree: {
                    url: '../data/department.ashx?Action=deptree&company_id=' + company_id + '&rnd=' + Math.random(),
                    onSuccess:function(data){
                        if (data.length <= 1) {
                            $("#department").val("无");
                        }
                    },
                    usericon: 'icon',
                    idFieldName: 'id',
                    checkbox: false
                }
            });
        }
lyxiang123456 2015-09-21
  • 打赏
  • 举报
回复
这个方法应该可以,我试试。
Go 旅城通票 2015-09-21
  • 打赏
  • 举报
回复 1
用容器扩起dom元素,方法重置
<div id="lb"><input type="text" id="txt1" /></div>
$('#lb').html('<input type="text" id="txt1" />')//重置dom元素
 $("#txt1").ligerComboBox({//重新生成cb,注意设置数据源和相关配置
                width: 180,
                selectBoxWidth: 200,
                selectBoxHeight: 200, valueField: 'text', treeLeafOnly: false,
                tree: { url: '../tree/json.txt', ajaxType: 'get' }
            });;
lyxiang123456 2015-09-21
  • 打赏
  • 举报
回复
能具体一点么?
Go 旅城通票 2015-09-21
  • 打赏
  • 举报
回复 1
干嘛不用easyui了,ligerui太多bug了,方法也不多,一定要用就设置容器内容为空,然后直接重构一棵树算了

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧