jQuery MiniUI

标题: datagrid 的 oncellendedit事件 [打印本页]

作者: inmove    时间: 2013-12-6 13:53:00     标题: datagrid 的 oncellendedit事件

var afterCellEditor = function(e) {
        var re = /^(0|[1-9][0-9]*)$/;
        if(re.test(e.value)) {
                alert("right");
        }else{
                alert(current_cell_value);
        }
};
oncellendedit 监听在这个事件上,当e.value 不 满足的时候 怎么 把 e.value 怎么重新赋值?current_cell_value是之前保存下来的数据.

作者: felt    时间: 2013-12-6 14:15:27

grid.on("cellendedit",function(e){
         var row=e.row;
         var field=e.field;        
        if(field=="xxx" ){
            var re = /^(0|[1-9][0-9]*)$/;
            if(re.test(e.value)) {
                alert("right");
            }else{
               // alert(current_cell_value);
                grid.updateRow(row,{xxx:current_cell_value})   //xxx是你那列的field
           }
       }
      })

作者: inmove    时间: 2013-12-6 14:27:53

felt 发表于 2013-12-6 14:15
grid.on("cellendedit",function(e){
         var row=e.row;
         var field=e.field;        

field == "xxx" ? 那这不是只能有一列被 改了,我这同时有10多列可能被改啊,
作者: felt    时间: 2013-12-6 14:38:02

grid.on("cellendedit",function(e){
         var row=e.row;
         var field=e.field;        
      
            var re = /^(0|[1-9][0-9]*)$/;
            if(re.test(e.value)) {
                alert("right");
            }else{
               // alert(current_cell_value);
               var rdata={};
               rata[field]=current_cell_value
               grid.updateRow(row,rdata)   
           }
      
      })
这样试试
作者: inmove    时间: 2013-12-6 14:46:03

felt 发表于 2013-12-6 14:38
grid.on("cellendedit",function(e){
         var row=e.row;
         var field=e.field;        

不行啊,rdata是一个js的对象,updateRow应该要用一个json吧?
var afterCellEditor = function(e) {
        var row = e.row;
        var field = e.filed;
        var re = /^(0|[1-9][0-9]*)$/;
        if(re.test(e.value)) {
                alert("right");
        }else{
                //alert(before_edit);
                var data = {};
                data = {field : before_edit};
                mini.get("modifyPlans").updateRow(row,data);
        }
};
我这样写,data = {field : before_edit};却不是前面定义的field了,也不行,
作者: inmove    时间: 2013-12-6 14:55:46

felt 发表于 2013-12-6 14:38
grid.on("cellendedit",function(e){
         var row=e.row;
         var field=e.field;        

全部删了 重新 写了一下,现在行了,谢谢了




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2