Хорошо, глядя на ваш пример кода, я вижу большую разницу между HTML-кодом, который вы используете для визуализации страницы, и кодом, который вводится.
В строке JavaScript у вас есть конструкции, которые выглядят так (это всего лишь пример, возможно, не та строка, которая вызывает проблему):
'<select name="">' +
'<option>Change ID</option>' +
'<option>Change Userame</option>' +
'<option>Change Password</option>' +
'<option>Change Name</option>' +
'<option>Change Email Address</option>' +
'</select>' +
И в HTML этовыглядит следующим образом:
<select name="">
<option>Change ID</option>
<option>Change Userame</option>
<option>Change Password</option>
<option>Change Name</option>
<option>Change Email Address</option>
</select>
Результат для синтаксического анализатора - это две совершенно разные вещи, потому что не JavaScript имеет значительное количество пробелов и возврат каретки + перевод строки между каждым элементом.
Это обратное тому, что я описал - похоже, вам нужно пустое пространство, чтобы оно выглядело правильно.
Есть два способа решения этой проблемы, которые сразу приходят на ум.1) Храните ваши HTML-шаблоны в теге скрипта.Мне это нравится, потому что это облегчает их редактирование, и вы не имеете дело с большим количеством цитат и плюсов в каждой строке.или 2) Добавьте хотя бы один пробел в конец каждой строки перед конечной кавычкой и добавьте.
Да, я видел это много лет назад, отследил его до пробела между тегамиконец и начало тега.Не должно иметь значения, но имеет значение.
У меня было что-то вроде этого
..</tag1> <tag2>...
И я изменил его на
..</tag1><tag2>...
Это решило проблему.
Кажется, я помню, что это чаще встречалось в IE и элементах списка, но я мог помнить неправильно.