基于元数据的 Extjs 构建表单
Extjs building form on metadata
我将使用从服务器接收的元数据配置的 ExtJs 4 构建一个 FormPanel。元数据(json 数组)如下所示:
{
"metaData": {
[
{
"allowBlank:": false,
"fieldLabel:": "labelText1",
"name:": "labelName1",
"emptyText:": "null"
},
{
"allowBlank:": false,
"fieldLabel:": "labelText1",
"name:": "labelName1",
"emptyText:": "null"
}
]
},
"success": true,
"msg": "Unknown"
}
是否可以使用给定的 json 数组在运行时创建表单?所以是的,你能给一个教程或例子吗?
当然possible。基本上,您将元数据用作 items
并随时创建表单:
var metadata = [
{
"allowBlank": false,
"fieldLabel": "labelText1",
"name": "labelName1",
"emptyText": null
},
{
"allowBlank": false,
"fieldLabel": "labelText1",
"name": "labelName1",
"emptyText": null
}
];
Ext.create('Ext.form.Panel', {
defaultType: 'textfield',
width: 300,
bodyPadding: 10,
renderTo: Ext.getBody(),
items: metadata
});
只需确保元数据 JSON 正确,从 属性 名称等中删除冒号(“fieldLabel
”应该是,而不是“fieldLabel:
”)。
我将使用从服务器接收的元数据配置的 ExtJs 4 构建一个 FormPanel。元数据(json 数组)如下所示:
{
"metaData": {
[
{
"allowBlank:": false,
"fieldLabel:": "labelText1",
"name:": "labelName1",
"emptyText:": "null"
},
{
"allowBlank:": false,
"fieldLabel:": "labelText1",
"name:": "labelName1",
"emptyText:": "null"
}
]
},
"success": true,
"msg": "Unknown"
}
是否可以使用给定的 json 数组在运行时创建表单?所以是的,你能给一个教程或例子吗?
当然possible。基本上,您将元数据用作 items
并随时创建表单:
var metadata = [
{
"allowBlank": false,
"fieldLabel": "labelText1",
"name": "labelName1",
"emptyText": null
},
{
"allowBlank": false,
"fieldLabel": "labelText1",
"name": "labelName1",
"emptyText": null
}
];
Ext.create('Ext.form.Panel', {
defaultType: 'textfield',
width: 300,
bodyPadding: 10,
renderTo: Ext.getBody(),
items: metadata
});
只需确保元数据 JSON 正确,从 属性 名称等中删除冒号(“fieldLabel
”应该是,而不是“fieldLabel:
”)。