Javascript DOMParser.parseFromString, дающий ошибку синтаксического анализа

При выполнении этого в консоли, почему я получаю ошибку синтаксического анализа?

TR = '<TR id=line1 class="myClass"><INPUT id=input1 type=hidden> <INPUT id=input2> <TD style="PADDING-LEFT: 20px" align=left> <IMG class=im border=0 src="images/img.gif"> Hello </TD><!-- comment --> <TD id=cell1 align=right></TD> <TD id=cell2 align=right></TD> <TD align=middle>&nbsp; </TD> <TD align=middle></TD></TR>';
parser = new DOMParser()
xmlDocument = _parser.parseFromString(TR, "text/xml");

Ответ 1

Первая проблема (я предполагаю, что это не тот, который вы испытываете, скорее, этот код ошибочно скопирован): Ваше имя переменной parser, а не _parser.

Основная проблема заключается в том, что вы пытаетесь проанализировать HTML как XML, который будет работать IF, ваш HTML также является действительным XML. Но твой нет. Отправьте свои атрибуты для начала. Что то, что

error on line 1 at column 8: AttValue: " or ' expected

средства.

После этого закройте свои элементы void. О'кей, если оставить HTML-код в конечной косой чертой, но не в более строгих правилах XML.

Ответ 2

Вы создаете новый DOMParser() и назначаете его переменной с именем parser:

parser = new DOMParser()

Но тогда вы ссылаетесь на необъявленную переменную _parser на следующей строке:

xmlDocument = _parser.parseFromString(TR, "text/xml");

Если вы замените _parser на parser, ошибка консоли должна исчезнуть.