2016-03-02 2 views
0

Выполняя это в консоли, почему я получаю ошибку синтаксического анализа?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 

средства.

После этого закройте свои элементы пустоты. Все в порядке, чтобы оставить конечную косую черту HTML5, но не в более строгих правилах XML.

1

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

parser = new DOMParser() 

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

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

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

Смежные вопросы