【发布时间】:2013-05-07 05:03:12
【问题描述】:
对不起,伙计们,但我遇到了这两个问题。我希望你们能帮我解决这个问题。
这是我的代码的一部分
jQuery("#VWWMODULE").jqGrid(
{
url:'loadstatic.php?q=2&t=CORE_VW_WMODULE',
datatype: "json",
mtype: "POST",
colNames:['Id', 'From Range', 'To Range'],
colModel:
[
{
name:'id',
index:'id',
width:7,
editable:true,
edittype:'text',
editrules:{required:true},
editoptions:{maxlength:7, size:7},
formoptions:{rowpos:1, elmprefix:' '},
key:true
},
{
name:'rangefrom',
index:'rangefrom',
width:7,
editable:true,
edittype:'text',
editrules:{required:true, number:true},
editoptions:{maxlength:7, size:7},
formoptions:{rowpos:6, elmprefix:' '}
},
{
name:'rangeto',
index:'rangeto',
width:7,
editable:true,
edittype:'text',
editrules:{required:true, number:true, custom:true, custom_func:frtid},
editoptions:{maxlength:7, size:7},
formoptions:{rowpos:7,elmprefix:' '}
}
]
正如您在“rangeto”中看到的,我正在进行自定义验证。这个验证实际上很简单。它只需要检查我们输入的'rangeto'的值是否大于'rangefrom'的值。现在如何从“rangefrom”中获取值,以便将其与自定义验证函数中“rangeto”中的值进行比较?
我的第二个问题是关于索引“id”。它用作表的主键。所以在编辑模式下不应该改变它。我是说在添加模式下,用户可以随意输入。但是一旦他提交了,这个值就不能改变了。在编辑模式下,用户仍然可以看到“id”值,但他无法更改它,因为它是不可编辑的。这是怎么做到的?
编辑
好的,现在我遇到了另一个问题。这是一个简单的问题。
- 如何在添加模式下调用自定义验证函数?因为我的函数在编辑模式下不应该被调用时会给出错误消息
你们中的任何人都可以帮我解决我遇到的这 3 个问题吗?
编辑
解决了here的更多解释
【问题讨论】:
-
stackoverflow 的目标不是提供帮助论坛来解决您的所有问题。目标是分享常见问题和答案(常见问题的解决方案)。因为交换问题是邪恶的。此类问题可能会被错误索引,因此其他问题将无法找到解决方案。你应该在不同的问题中区分不同的问题。
-
我建议您使用
beforeCheckValues回调,将id字段设置为只读或隐藏在beforeShowForm内部(参见the answer 和the answer)。 -
我很抱歉这件事。我只是想让它更简单,所以我不必创建新问题,因此不会真正浪费服务器中的一些空间。在我提出问题之前,我还对文档进行了一些研究,并且已经搜索了一些类似的问题,但要么无法得到正确的问题(正如你所说的错误索引),无法得到答案,或者我发现的问题在这种情况下相似但并不完全相同,我找到了有关内场编辑的答案,但它并不能真正解决我的问题。无论如何感谢您的回复和答案,我会检查出来