- 注册时间
- 2013-3-13
- 最后登录
- 2020-12-10
- 阅读权限
- 10
- 积分
- 530
- 精华
- 0
- 帖子
- 97

|
本帖最后由 commandercom 于 2015-2-13 10:29 编辑
我给gird加上 allowResizeColumn="true" 和
function onCellValidation(e) {
if (e.value == '') {
e.isValid = false;
e.errorText = "不能空";
}
}
又加上增加行 function addRow() {
var newRow = { name: "New Row" };
grid.addRow(newRow, 0);
}
然后保存的时候 function saveData() {
grid.validate();
if (grid.isValid() == false) {
return;
}
}
然后发现新增一行后,先调整列宽,再在新增行的空单元中输入内容,而且内容都是符合验证规则的,填完后没有任何单元格变红,再保存时 grid.isValid() = false,也没有任何单元格变红。
---------------------------------------------------------------
如果先弄一个变量 var error,
onCellValidation(e)改成
function onCellValidation(e){
if (e.value == '') {
e.isValid = false;
e.errorText = "不能空";
error = false;
}
}
saveData()改成
function saveData() {
error = true;
grid.validate();
if (error == false) {
return;
}
}
这样就可以解决先调整列宽再输入内容,虽然符合规则但是不通过的问题。
------------------------------------------------
请问是否是因为调整列宽的时候就进行验证了,然后验证结果就存在那里了。
grid有没有清验证结果的方法,我这样写不行:grid.isValid() = true。
我用的好像是3.0版本。
不知道说清楚了没有。
|
|