您的位置:首页 > 产品设计 > UI/UE

easyui datagrid 编辑器添加事件

2015-06-30 14:19 471 查看
easyui的庞大功能使我们实现web页面的一些复杂功能变得简单快捷,下面我来总结一下我今天用到的datagrid的编辑器事件:

有时我们想让datagrid中的data处于动态编辑,当触发datagrid的onCheck事件时选择的行处于编辑状态,当编辑结束时触发一个处理编辑数据的事件,datagrid
getEditor提供的target.bind可以很方便的实现事件的绑定,从而实现事件处理。

本人现在实现的是当编辑结束时获取编辑后的值并进行运算后赋给input,代码如下:

//结束所有的编辑状态

function endEdit(){
var rows = $('#companyList').datagrid('getRows');
for ( var i = 0; i < rows.length; i++) {
$('#companyList').datagrid('endEdit', i);
}

}

//触发选择框事件

onCheck:function(rowIndex,rowData){
endEdit();//结束所有编辑
$('#companyList').datagrid('beginEdit', rowIndex);//开始编辑选择的行
var ed = $('#companyList').datagrid('getEditor', {index:rowIndex,field:'purchaseBudget'});//获取当前的编辑器
ed.target.bind('blur', function () {//绑定失去焦点事件
$('#companyList').datagrid('endEdit', rowIndex);//结束编辑
var budget = rowData.purchaseBudget;//获取勾选行填写的值
if(budget == null || budget == "" || budget == '0' || budget == undefined){
$.messager.alert('提示', '请核对采购预算填写项!', 'warning');
$('#companyList').datagrid('uncheckRow', rowIndex);
return;
}
var purBudget = $('#purchase_budget').html();//获取采购总预算的值
if(purBudget == null || purBudget ==undefined || purBudget == ""){
purBudget = 0;
}
var totalBudget = parseFloat(purBudget) + parseFloat(budget);//将采购总预算和选择的值相加
$('#purchase_budget').html(totalBudget);
});

},
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  easyui 编辑器 事件