最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • EasyUI datagrid editor combogrid搜索框的实现

    首先需要datagrid editor对combogrid的扩展,这个是别人实现的:

    $.extend($.fn.datagrid.defaults.editors, {
    combogrid: {
    init: function (container, options) {
    var input = $('<input type="text" class="datagrid-editable-input">').appendTo(container);
    input.combogrid(options);
    return input;
    },
    destroy: function (target) {
    $(target).combogrid('destroy');
    },
    getValue: function (target) {
    return $(target).combogrid('getValue');
    },
    setValue: function (target, value) {
    $(target).combogrid('setValue', value);
    },
    resize: function (target, width) {
    $(target).combogrid('resize', width);
    }
    }
    });

    然后将搜索框写在div里面

    <div id="Marketer_ID_Member_bar">
    <table cellpadding="0" cellspacing="0" style="width: 100%;">
    <tr>
    <td style="text-align: right; padding-right: 15px">
    <input id="userName_Member" placeholder="姓名/用户名" style="width: 100px; border: 0;" />
    <input type="button" value="查询" onclick="sy.memberInfo.userSearch_Member();" />
    </td>
    </tr>
    </table>
    </div>

    通过toolbar: “#Marketer_ID_Member_bar”来绑定

    下面肉戏来了,按照我们在别的地方应用combogrid的做法,具体的搜索方法sy.memberInfo.userSearch_Member里面是这样的:

    $('#Marketer_ID_Member').combogrid('grid').datagrid('options').queryParams.Name = $("#userName_Member").val();
    $('#Marketer_ID_Member').combogrid('grid').datagrid('reload');

    然而,在editor里面没有明确的id用来寻找元素,此时第一反应是自己加一个ID行不行,于是我尝试给editor加一个属性“id”,然并卵。

    接下来尝试在combogrid加载完成的时候通过Marketer_ID_Member_bar来关联找到它的父级(思路是它是作为combogrid的toolbar,通过它应该能找到combogrid)并赋值id,结果能赋值成功,但是Marketer_ID_Member_bar的父级并不是combogrid,失败。

    此时想到去看看别的地方使用combogrid的情况,最终发现,如果我通过$(‘#txtInputID’).combogrid({});把一个input转化成combogrid,此input的class会被变成easyui-validatebox combogrid-f combo-f validatebox-text,通过对比,发现在editor使用的时候,该列的输入框的样式是:datagrid-editable-input combogrid-f combo-f,

    这应该就是正主了,同样不方便设置id,于是我们使用样式选择器,所以最终sy.memberInfo.userSearch_Member方法里是这样的:

    $('.combogrid-f').combogrid('grid').datagrid('options').queryParams.Name = $("#userName_Member").val();
    $('.combogrid-f').combogrid('grid').datagrid('reload');

    也是够曲折的,前面开发的时候稍微研究了下没有解决好就没理它,因为还有一个办法可以避过,就是不使用editor,通过弹出框来编辑,也就不是很着急,今天稍微闲一点,又来看看,最终找到个能用的方案。

    以上内容是针对EasyUI datagrid editor combogrid搜索框的实现的简单介绍,希望对大家有所帮助!

    EasyUI中combogrid的使用方法

    ComboGrid用法和参数配置

    1、 需要引入class=” “easyui-combogrid”,必须应用在input或select元素中

    2、 参数设置需要在data-options中设置

    3、 属性参数配置:

    loadMsg:加载远程数据,显示的信息

    idField:select中选择提交值

    textField:select中选择的显示值

    mode:定义如何加载DataGrid的数据文本的方式。当设置为“’remote’”模式下,什么类型的用户将被发送http请求参数名为’q’的服务器,以获取新的数据

    filter:当数据加载时”mode”设置为”local”,如何选择本地数据源,返回true选择行

    4、 方法

    options():返回选择对象

    grid():返回选择dataGrid对象

    setValues(values):设置元素值数组

    setValue(value):设置组件的值

    clear():清除组件的值

    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » EasyUI datagrid editor combogrid搜索框的实现
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 293稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情