根据我的理解,Ext JS表单面板需要以下输入:
{
'success': true,
'data': {
'name-field': 'Boogie',
'number-field': '789789',
'application-field': 'CE',
'brand-field': 'GE',
'clientreport-field': '1',
'moneyreport-field': '1',
'billingreport-field': '1',
'auditreport-field':'1'
}
}";
但是下面的ASP.NET MVC控制器:
public ActionResult FormLoader(string id)
{
var result = repoS.GetClientSetting(id);
return Json(new {success = true, data = result}, JsonRequestBehavior.AllowGet);
}
返回以下输出:
{
"success": true,
"data": [
{
"ID": 3,
"Name": "Forngap",
"Number": "lipo-900",
"Application": "EA",
"Brand": "6.7.8",
"ClientReport": false,
"MoneyReport": false,
"BillingReport": false,
"AuditReport": false,
"Login": "eeporp",
"Password": "ungah",
"Active": false
}
]
}
“data”数组周围有一组额外的“[]”。上面的控制器可以返回Ext JS表单想要的内容吗?或者除了Json之外还需要什么?谢谢!
答案 0 :(得分:0)
它接缝:
var result = repoS.GetClientSetting(id);
返回包含1个必需元素的数组,因此请尝试仅将第一个元素传递给data
:
return Json(new {success = true, data = result [1]} ...
不确定语法是否正确(不适用于ASP.NET)
或加载数据以形成发送数组数据的第一个元素
....getValues( data[0] );
然而,修复输出将是更好的方式