论坛首页 Web前端技术论坛

jquery-easyui中表格的行编辑功能

浏览 33713 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-08-04   最后修改:2010-08-04
stworthy 写道

假设你的记录中有id字段,在columns中不需要定义,但可以这样取出来:

var row = $('#tt').datagrid('getSelected');
alert(row.id);
 

    var value = $('#qcip').datagrid('getSelected');//其中datagrid中保存了后台返回的数据,有s1l,guid等。

    我在columns中只定义了s1l,但没定义guid。

    alert(value.s1l);显示为空
    alert(value.guid);显示为undefined

 

我用FireDebug看到,在datagrid中是没guid这内容的。

 

所以在取datagrid('getSelected')时候没guid的值。我用的是最新的easyui-1.1.2的。

 

请指教!

 

注:我记录是appendRow 加入datagird的。

 

0 请登录后投票
   发表时间:2010-08-04  
需要检查你在appendRow时有没有把guid字段添加进出,如:
.datagrid('appendRow', {
guid:...
});
0 请登录后投票
   发表时间:2010-08-04  
作者能不能提供没有混淆变量的下载版本,混淆后的,根本不能阅读。
0 请登录后投票
   发表时间:2010-08-04  
stworthy 写道
需要检查你在appendRow时有没有把guid字段添加进出,如:
.datagrid('appendRow', {
guid:...
});

已经可以了!谢谢您!
0 请登录后投票
   发表时间:2010-09-28  
有一点我不明白,我把data换成url了。从后台获取json,那个for循环里没有products了,应该怎么写呢?
0 请登录后投票
   发表时间:2010-10-12  
如何设置datagrid某行的值呢?我作一个报价的datagrid,有总价和个数的列,个数是一个combobox固定的几个选项,如果个数改变时,则位于同一行的总价需要自动作变更(根据单价,单价是固定的),现在的编辑方法,我改变了个数,总价还是要手动去更改值,有没办法在这个combobox的onchange中加入某个事件,让总价的那个格子的数值变成我想要的值,而不是手动输入
0 请登录后投票
   发表时间:2010-10-12  

解决思路:在进入行编辑状态后,获取combobox的编辑器并添加onChange事件,示例代码如下:

var amount = $('#tt').datagrid('getEditor', {index:editLineIndex,field:'amount'}).target;	// 个数
var sum = $('#tt').datagrid('getEditor', {index:editLineIndex,field:'sum'}).target;	// 总数
amount.combobox({
	onChange:function(id){
		sum.val(id*100);	// 假设是text编辑类型
	}
});
 
0 请登录后投票
   发表时间:2010-11-26  
大哥,你们把demo给贴出来了。还没个注释说明。没意思!
0 请登录后投票
   发表时间:2011-02-23  
//设置主工作完成状态编辑器
    var options = dgm.datagrid('options');
options.columns[0][2].editor = {
type:'combobox',
options:{
valueField:'val',
textField:'desc',
panelWidth:100,
            panelHeight: 'auto',
editable:false,
data:status,
onSelect:function(record){
var sd = $('#_date').val();
if(record.val == 3){
dlgMnd.dialog({
left: $(this).parent().offset().left,
top: $(this).parent().offset().top - 100
});
dlgMnd.dialog('open');
}
}
}
};
   
    //格式化函数
options.columns[0][2].formatter = function(value, record ){
for(var i=0; i<status.length; i++){
if(status[i].val == value) return status[i].desc;
}
return value;
};
   
    //编辑器
options.columns[0][3].editor = "textarea";
0 请登录后投票
   发表时间:2011-04-21  
    请问我可以实现 当前编辑的一行中, editor:'text' , 但是此输入框不能输入,因为它的值 是 其他 两个 Text 计算出来的结果值 ,如果我不用 editor:‘text’ , 那么当我新添加一行的时候,计算出来的结果值根本就保存不了, 请问有解决方案么 ? 谢谢 ~~
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics