我已经用对象方法创建了一些新对象,但在返回信息时遇到了麻烦。
我打算将设为2d数组:

        var allPages = [[]];

        function textbox(type)
        {
            this.type=type;
            this.getInfo = function () { return ( this.type ); };
        }

        function addTextbox(dropdown)
        {

            var myindex  = dropdown.selectedIndex;
            var SelValue = dropdown.options[myindex].value;

            if(SelValue == "String")
            {

                    var tb = new textbox("string");
                    allPages[allPages.length-1].push(tb);

                    var string = "";
                    for (i = 0;i < allPages.length;i++)
                    {
                        for(j = 0;j < allPages[i].length;j++)
                        {
                            string = string + allPages[i][j].getInfo;
                        }
                    }
                    <!-- Problem here: prints "function () { return this.type; }"-->
                    document.write(string);
                }

            }
}

最佳答案

您没有在调用该函数,而是在引用它

allPages[i][j].getInfo;


应该

allPages[i][j].getInfo();

09-29 20:23