我正在编写一个自定义复选框格式化程序,我很难理解offval
属性的用途以及它的值应该是什么。
特别是当设置了编辑选项的值时。例如editoptions: { value:"Yes:No" }
我可以看到默认复选框格式化程序始终将offval
设置为 no
.这个 api 文档说它也可以设置为 off
.在代码中,我还看到该值可以设置为编辑选项的第二个值。如果是要No
的示例,但这可以是任何提供的值。
那么如何为我的复选框格式化程序实现 offval 属性呢?提前感谢!
我认为您不需要在自定义复选框格式化程序内设置任何offval
属性。 如果使用 jqGrid edittype: "checkbox"
,则设置属性本身(请参阅代码部分)。因此,在我看来,如果您也创建自定义格式化程序或自定义编辑控件,则无需在自定义格式化程序或自定义编辑控件中设置offval
。
顺便说一下,在我发布格式化程序代码的时候:"可点击复选框"我和你有同样的问题。我不明白offval
的意思,我只是在代码中包含offval="no"
。:-).我不认为它有任何意义,但要确定必须测试所有原因。
如果您编写多次使用的自定义格式化程序,我建议您使用
(function ($) {
"use strict";
$.extend($.fn.fmatter, {
yourFormatterName: function (cellValue, options) {
....
}
});
$.extend($.fn.fmatter.yourFormatterName, {
unformat: function (cellValue, options, elem) {
...
}
});
}(jQuery));
作为格式化程序的原型。以注册新格式化程序"yourFormatterName"的方式,您可以像使用任何其他预定义格式化程序一样使用它:您只需在相应列的列定义中使用formatter: "yourFormatterName"
而不是formatter: "checkbox"
。我觉得这种方式非常实用。