如何在select for appendgrid jquery插件中动态加载选项值

时间:2015-08-18 14:48:22

标签: javascript jquery jqgrid grid append

我使用Appendgrid进行数据输入。

appendgrid中的一个列是select的输入类型。

根据示例,可以使用如下选择

$('#tblAppendGrid').appendGrid({
columns:[
{ 
 name: 'Origin',
 display: 'Origin',
 type: 'select',
 ctrlOptions: { 1: 'Hong Kong', 2: 'Taiwan', 3: 'Japan', 4: 'Korea',  5: 'US', 6: 'Others'}
 }
]
});

但我的ctrlOptions列表是动态的,我通过api调用。我按照上面的要求获得了json字符串,但是当我尝试替换json变量时,我不知道为什么字符串的一部分直到第一次出现":"被删除

示例:

var data="{1:'Mango',2:'Banana',3:'Milk'}";


$('#tblAppendGrid').appendGrid({
columns:[
{ 
name: 'Origin',
display: 'Origin', 
type: 'select',
ctrlOptions:   data
}]
});

所以这将产生一个只有一个选项的选择,其中包括“芒果' 2:'香蕉' 3:'牛奶'}

如何解决它以产生适当的选择。

1 个答案:

答案 0 :(得分:0)

在您的工作示例中,ctrlOptions不是JSON字符串,但它是一个对象。在你的非工作示例中,ctrlOptions也不是JSON,因为它格式不正确。您的代码可能有1或2个问题。

JSON必须像这样格式化(注意使用的引号): {" 1":"芒果"" 2":"香蕉"" 3":"牛奶"}

您的第二个问题可能是您的插件不接受JSON,只接受对象。如果是这种情况,您可以使用sampleCell.button.layer.borderColor = UIColor.blackColor().CGColor将JSON转换为对象。

JSON.parse