我正在尝试绘制一个表格和表单,以便根据从服务器检索到的json对象,向页面上的所述表格添加数据。我遇到了Uncaught typeError,无法弄清原因。
如果我console.log()对象,它会按预期在控制台中打印出来。我什至可以输出特定的属性没有问题。但是,当我尝试使用任何属性时,在html字符串中,我收到“ Uncaught TypeError:无法读取未定义的属性'formName'”
function testFunc(subform){
console.log(subForm.layout.formName); //<--- prints the name to the console
var form = '<div class="assetSubForm"><h2>' + subForm.layout.formName + '</h2>';
console.log(form); //<--- error's out???
return form;
}
对象如下:
{records: false, layout: {…}}
layout:
fields: (5) [{…}, {…}, {…}, {…}, {…}]
formID: 30
formName: "Part 11 - Building Clearance And Fire Appliances"
position: 120
__proto__: Object
records: false
__proto__: Object
我无法为自己的一生而死。我尝试使用谷歌搜索,但由于无法弄清楚如何在合适的搜索词中用词而出现空白,并且所有出现的结果都与范围或拼写错误有关(例如,在匿名函数中定义并引用的对象)外面)。
答案 0 :(得分:1)
您的参数名称为subform
,您在代码的其他部分中引用了subForm
。
我假设在该作用域中有一个subForm
变量,但是它的值会改变,因此取决于您何时调用该函数,有时它不起作用。
答案 1 :(得分:0)
您将参数设为subform
,但您尝试访问subForm
中的console.log
请参见代码的第1行和第2行。