jQuery MiniUI

标题: DataGrud onCellCommitEdit事件后定位到当前单元格 [打印本页]

作者: Jobs    时间: 2013-10-8 10:59:53     标题: DataGrud onCellCommitEdit事件后定位到当前单元格

本帖最后由 Jobs 于 2013-10-8 11:03 编辑
  1. function onCellCommitEdit(e) {
  2.         var record = e.record;
  3.         var editor = e.editor;
  4.         var sender = e.sender;
  5.         editor.validate();
  6.         if (editor.isValid() == false) {
  7.                 e.cancel = true;
  8.                 nui.alert(editor.getErrorText(),"",function(){
  9.                         sender.setCurrentCell([e.rowIndex,e.column._index]);
  10.                         sender.beginEditCell();
  11.                         return;
  12.                 });
  13.         }
  14. }
复制代码
最近用nui,在DataGrud验证结束时想激活之前编辑的单元格,代码如上。
作者: factory    时间: 2013-10-8 11:40:53

  1. function onCellCommitEdit(e) {
  2.             var record = e.record;
  3.             var editor = e.editor;
  4.             var sender = e.sender;
  5.             sender.validate();
  6.             if (sender.isValid() == false) {
  7.                 e.cancel = true;
  8.                 mini.alert(editor.getErrorText(), "", function () {
  9.                     sender.setCurrentCell([e.rowIndex, e.column._index]);
  10.                     sender.beginEditCell();
  11.                     return;
  12.                 });
  13.             }
  14.         }
复制代码
<div field="loginname" vtype="required;email" width="120" headerAlign="center" allowSort="true">员工帐号


单元格的验证是加在列上的,也是表格的validate()和isValid(),并非编辑器
作者: Jobs    时间: 2013-10-8 14:17:00

本帖最后由 Jobs 于 2013-10-8 14:19 编辑
factory 发表于 2013-10-8 11:40
员工帐号

这样的话怎样才能让 editor.getErrorText()拿到值?

我是要显示验证失败的提示信息啊

作者: factory    时间: 2013-10-8 17:42:25

Jobs 发表于 2013-10-8 14:17
这样的话怎样才能让 editor.getErrorText()拿到值?

我是要显示验证失败的提示信息啊

你根据单元格的格式,比如单元格是必须为emai,给编辑器加上属性emailErrorText="必须为email"

然后在,mini.alert( mini.alert(editor.getEmailErrorText())
作者: Jobs    时间: 2013-10-9 07:41:31

factory 发表于 2013-10-8 17:42
你根据单元格的格式,比如单元格是必须为emai,给编辑器加上属性emailErrorText="必须为email"

然后在,min ...

这样如果 vtype="required;email" 验证失败的话要先判断再决定调用getErrorText()还是getEmailErrorText()什么的,如果是这样的话,太不智能了吧
作者: factory    时间: 2013-10-9 09:20:49

Jobs 发表于 2013-10-9 07:41
这样如果 vtype="required;email" 验证失败的话要先判断再决定调用getErrorText()还是getEmailErrorText( ...

现在的错误提示需要你自己定义
作者: niko    时间: 2013-10-14 20:08:02

单元格验证操作示例:http://miniui.com/demo/#src=datagrid/cellvalidation.html
我们现在是任意编辑,保存前验证,然后进入验证失败的单元格继续编辑。





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