JavaScript: возникают проблемы с возвратом пользовательской информации об объекте - PullRequest
0 голосов
/ 06 декабря 2011

Я создал несколько новых объектов с помощью методов объекта, и у меня возникают проблемы с возвратом информации. Я намерен для allPages быть 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);
                }

            }
}

Ответы [ 2 ]

2 голосов
/ 06 декабря 2011

Вы не вызываете функцию, вы ссылаетесь на нее

allPages[i][j].getInfo;

должно быть

allPages[i][j].getInfo();
2 голосов
/ 06 декабря 2011

3 строки выше, где вы утверждаете, что проблемы существуют, должно быть:

string = string + allPages[i][j].getInfo(); // mind the () at the end.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...