下拉列表中的JqGrid空白值

时间:2014-03-22 11:03:09

标签: jqgrid jqgrid-asp.net

我想在下拉列表中显示一个空白值,我正在使用这样的代码,但这会产生一个下拉列表,其中最后一个空白值,并且默认选中,我首先想要空白值,默认情况下选中

{name: 'AuditLevel', index: 'levels', align: 'center', width: 15,
editable: true, edittype: 'select',
editoptions: { value: {' ': ' ',1: 'Level1', 2: 'Level2', 3: 'Level3' }}

此解决方案

1 个答案:

答案 0 :(得分:1)

问题的存在是因为您使用editoptions.value对象表单。在JavaScript中读取此类editoptions.value对象的唯一方法是对象属性的枚举(循环类似var prop; for (prop in editoptions.value))。问题是,案例中属性的顺序可能与初始化对象期间编写属性的顺序不同。

如果属性的顺序对您很重要,那么您应该使用字符串形式

editoptions: { value: " : ;1:Level1;2:Level2:3:Level3" }

会更好

editoptions: { value: {' ': ' ',1: 'Level1', 2: 'Level2', 3: 'Level3' }

jqGrid会将字符串" : ;1:Level1;2:Level2:3:Level3"拆分为;,然后使用:作为值和选项文本之间的分隔符。如果选项的文本(或值)包含分隔符:;,则可以使用其他分隔符,但必须使用separator进行通知(默认值为“:” )和delimiter属性(默认值为“;”)。例如

editoptions: {
    value: " ↣ |1↣Level1|2↣Level;2|3↣Level:3"
    delimiter: "|",
    separator: "↣"
}