Javascript createElement () не работает в Chrome - PullRequest
4 голосов
/ 01 февраля 2011

Javascript createElement() не работает в Chrome, но прекрасно работает в IE и Firefox.Зачем?

Ответы [ 5 ]

4 голосов
/ 16 сентября 2013
var name = document.createElement("Div" ); 

будет работать.А позже вы можете добавить такие атрибуты, как

name.colSpan="2";
document.body.appendChild(name);

Примечание: не пытайтесь использовать угловые скобки, такие как createElement("<div />").Это не будет работать в Chrome.

Редактировать: исправлена ​​ошибка синтаксиса в приведенном выше коде.вместо запятой должна быть точка.

4 голосов
/ 01 февраля 2011

Работает отлично, используйте этот код:

var catDiv = document.createElement("div");
catDiv.innerHTML = "Test";
document.body.appendChild(catDiv);

Еще один рабочий пример (если у вас есть элемент с Id = myTableBody в вашем HTML)

var appendingTo = document.getElementById("myTableBody");
var tr = document.createElement("tr");
tr.setAttribute("name", "i");
appendingTo.appendChild(tr);
3 голосов
/ 01 февраля 2011

Поскольку ваш код испорчен, нет ничего плохого в "createElement":

<html>
    <head>
        <meta charset = "utf-8">

        <title></title>

        <script>
            window.onload = function () {
                for (var i = 0; i < 100; i ++) {
                    var div = document.createElement ("div");
                        div.style.border = "1px solid black";
                        div.style.margin = "20px";
                        div.style.padding = "10px";

                    document.body.appendChild (div);
                }
            }
        </script>

        <style></style>
    </head>

    <body></body>
</html>

enter image description here

1 голос
/ 31 октября 2016

Так что я также не смог заставить createElement() работать в Chrome.После прочтения сообщения Кайо и проверки предоставленного кода я выяснил, что я делаю неправильно.

На w3schools.com в примерах, которые они предоставляют, всегда используется имя тега ввсе заглавные буквы отл.createElement("DIV"), вот как я его использовал и с плохими результатами.

После изменения с "DIV" на "div" в моем собственном коде это мгновенно сработало.

Спасибо, Кайо.

0 голосов
/ 22 января 2013

Посоветуйтесь с моим ответом на этот вопрос. У меня была похожая проблема. Я создавал новые поля ввода, используя createElement, и у меня была та же проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...