用html5后加js datagrid根据datagrid列上数据不同加载不同的combobox下拉框并初始化下拉款值
时间: 2024-02-27 19:56:18 浏览: 102
jQuery Easyui datagrid editor为combobox时指定数据源实例
可以使用JavaScript和jQuery来实现根据datagrid列上数据不同加载不同的combobox下拉框并初始化下拉款值的功能。具体实现步骤如下:
1. 首先,在页面中引入jQuery和datagrid插件。
2. 在datagrid的列定义中,使用formatter函数来定义该列的显示格式,并将需要根据该列数据不同加载的下拉框的<div>元素添加到formatter函数中,如下所示:
```javascript
{field:'type',title:'Type',formatter:function(value,row,index){
var html = '<div class="type-combobox">';
if (value == 'A') {
html += '<select><option value="1">Option 1</option><option value="2">Option 2</option></select>';
} else if (value == 'B') {
html += '<select><option value="3">Option 3</option><option value="4">Option 4</option></select>';
}
html += '</div>';
return html;
}}
```
在这个例子中,根据type列的值不同加载了两个不同的下拉框,如果type列的值为A,则加载包含Option 1和Option 2选项的下拉框,如果type列的值为B,则加载包含Option 3和Option 4选项的下拉框。
3. 在页面加载完成后,使用jQuery来初始化下拉框的值,并绑定下拉框的change事件来处理下拉框值改变的情况。具体代码如下:
```javascript
$(function(){
$('.type-combobox select').each(function(){
var value = $(this).closest('tr').find('.datagrid-cell:eq(0)').text();
$(this).val(value);
});
$('.type-combobox select').change(function(){
// 处理下拉框值改变的情况
});
});
```
在这个例子中,使用jQuery选择器找到所有包含下拉框的<div>元素,并使用each函数来遍历每个下拉框,然后根据该下拉框所在行的第一列的值来初始化下拉框的值。同时,使用change函数来绑定下拉框值改变的事件处理函数。
通过以上步骤的实现,即可实现根据datagrid列上数据不同加载不同的combobox下拉框并初始化下拉款值的功能。
阅读全文