Проблема с оператором присваивания строки в IE [JavaScript] - PullRequest
1 голос
/ 09 марта 2011

Я столкнулся с какой-то странной проблемой в операторе назначения строк JavaScript.«Разметка» - это строковая переменная, имеющая данные в виде HTML-тегов -

var markup= "<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>";

this.el.dom.innerHTML = markup;

В IE, после назначения этой строки для innerHTML элемента ExtJs она удаляет все теги like и style и this.el.dom.innerHTML содержит следующее значение -

"<div id="element" ><div class="testClass"><span></span></div>";

Может кто-нибудь помочь мне выяснить, почему это происходит?

Примечание : рабочий файл оператора присваивания в Firefox и Chrome.

EDIT : переменная разметки передается в качестве параметра функции, поэтомуЯ думаю, что не могу контролировать изменения кавычек.

Ответы [ 3 ]

0 голосов
/ 09 марта 2011

попробуй

var markup= '<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>';

this.el.dom.innerHTML = markup;
0 голосов
/ 09 марта 2011

Вы должны написать

 var markup= "<div id=\"element\" ><link href=\"http://test.com/css/web.css\" rel=\"stylesheet\"><div class=\"testClass\"><span></span></div>";
 this.el.dom.innerHTML = markup;
0 голосов
/ 09 марта 2011

Попробуйте:

var markup= '<div id="element" ><link href="http://test.com/css/web.css" rel="stylesheet"><div class="testClass"><span></span></div>';

Вы продолжали открывать и закрывать оператор с разными кавычками, поэтому вместо этого оберните всю строку одинарными галочками, чтобы вы могли продолжать использовать "знаки" во всей строке.

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