问题
通常修改表单数据会使用
form.getForm().loadRecord(record)
填充form表单,尤其是combo,radiogroup等类型的数据填充。但是偶尔有些类型会填充失败。博主本人在填充radiogroup类型失败,且radiogroup的inputValue是”true”和”false”
思考
1)如果textfield类型能正常填充数据,查看combo,radiogroup等类型所对应的数据是否完整准确。
2)数据正常却不能正确填充,肯定是填充的过程出了问题。
解决问题
表单中的数据都是字符串类型,radiogroup的inputValue实际上字符串,因为后台的数据是布尔类型而无法和字符串匹配。所以需要手动的转换数据并手动填充。
var _form = processForm.getForm();
_form.loadRecord(d);
_form.findField("secrecy").setValue(_data.secrecy+""); // 将布尔值转为字符串
总结
- form表单中数据填充都是按字符串来匹配,如果某些类型填充失败,需要手动填充