gpt4 book ai didi

javascript - 如何将字符串解码为对象 EXTJS 6

转载 作者:行者123 更新时间:2023-12-03 06:48:10 26 4
gpt4 key购买 nike

我正在使用 ExtJS 从数据库创建 formPanel dynamyc(从服务器到对象 extjs 的字符串结果)

Ext.Ajax.request({
async : false,
method : 'POST',
url : '/Devt/GetFormItemCustomization',
params : {
TableName : 'tabeltest',
col : 1
},
success : function (response) {
var results = Ext.decode(response.responseText);
console.log(results );
var form = Ext.create('Ext.form.Panel', {
width : 300,
bodyPadding : 10,
renderTo : 'formCustDiv',
name : "test",
items : [results]
});
}
})

来自服务器的响应:

{
fieldLabel:'Employee Id',
xtype:'textfield',
allowBlank:false,
},
{
fieldLabel:'Nick Name',
xtype:'textfield',
allowBlank: false,
}

但这只会根据最后的数据创建一个对象。对象

{
fieldLabel: "Nick Name",
xtype: "textfield",
allowBlank: false
}

我希望服务器的响应解码成为两个对象:

对象 {fieldLabel: "员工 ID", xtype: "textfield", allowedBlank: false}

对象 {fieldLabel: "昵称", xtype: "textfield", allowedBlank: false}

有什么建议吗?

最佳答案

嗯,您的服务器应该始终返回有效的 JSON。以逗号分隔的两个对象不是有效的 JSON。 (如果您不相信我,您可以使用众多在线 JSON 验证器之一进行检查。)您的服务器可能会返回一个对象数组吗?像这样:

[
{fieldLabel: "Employee Id", xtype: "textfield", allowBlank: false},
{fieldLabel: "Nick Name", xtype: "textfield", allowBlank: false}
]

在这种情况下,您可以通过删除 results 变量周围的数组来轻松地继续创建表单:

var form = Ext.create('Ext.form.Panel', {
width : 300,
bodyPadding : 10,
renderTo : 'formCustDiv',
name : "test",
items : results
});

关于javascript - 如何将字符串解码为对象 EXTJS 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37628533/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com