easyUI 格式化ComboBox

@author YHC

这个教程像你展示如何创建一个简单的combobox 让它显示图片项在下拉框中,你可以使用formatter 函数在combobox 去告诉它如何格式化每一个条目.


查看 Demo

创建 Image Combobox
<input id="cc" style="width:100px"  
        url="data/combobox_data.json"  
        valueField="id" textField="text">  
</input>  
$('#cc').combobox({  
    formatter:function(row){  
        var imageFile = 'images/' + row.icon;  
        return '<img class="item-img" src="'+imageFile+'"/><span class="item-text">'+row.text+'</span>';  
    }  
});  
下载 EasyUI 示例代码:






### EasyUI ComboBox 格式化方法 在 EasyUI 中,可以通过 `formatter` 属性自定义 ComboBox 的显示样式。以下是详细的实现方式以及代码示例: #### 自定义 ComboBox 显示内容 通过设置 `formatter` 函数,可以控制每一项的展示效果。此函数接收一个参数 `row`,表示当前的数据对象。可以根据需求动态生成 HTML 结构。 ```javascript $('#cc').combobox({ valueField: 'id', textField: 'text', url: 'data/combobox_data.json', formatter: function (row) { var imageFile = 'images/' + row.icon; return '<img class="item-img" src="' + imageFile + '" /><span class="item-text">' + row.text + '</span>'; } }); ``` 在此示例中,每一条数据都会被渲染成一个图片和一段文字[^1]。其中 `row.icon` 是图片路径字段名,而 `row.text` 则是文本字段名。 #### 设置默认选中的值 如果希望初始化时就选定某一项,则需要使用 `setValue` 方法来设定初始值,并确保 `valueField` 和 `textField` 配置正确。 ```javascript $(‘#contact_city’).combobox({ valueField: ‘id’, textField: ‘text’, }).combobox('setValue', 'defaultId'); ``` 这里需要注意的是,在某些情况下如果不显式指定 `id` 和 `text` 字段名称可能会导致无法正常加载或选择错误选项的问题[^2]。 #### 动态加载远程数据源 当数据量较大或者需要实时更新时,可以从服务器端获取 JSON 数据并绑定到 ComboBox 上。 ```html <input class="easyui-combobox" id="group" name="group" data-options="panelHeight:'auto',valueField:'rid',textField:'rname',url:'/role/roleComboList.do'" value="-1"/> ``` 在这个例子中,`url` 参数指定了用于请求数据的服务地址;`valueField` 和 `textField` 分别对应于返回结果集中作为键值对使用的属性名字[^4]。 --- ### 注意事项 - **HTML 转义**: 如果输入的内容可能包含特殊字符(如 `<`, `>`),则需注意对其进行适当转义处理以免引发 XSS 攻击风险。 - **性能优化**: 对于大规模数据集来说,考虑分页机制或者其他形式的懒加载策略以提高用户体验。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值