2016-02-18 3 views
1

Позвольте мне пояснить ситуацию:Получите необработанный HTML-код полимерных элементов

Внутри div (#content) есть бумажный ввод. Теперь я хочу получить html-код внутри содержимого div #, который я использовал $("#content").html().

Но $("#content").html() дает мне код, введенный полимером.

Пример:

Ожидаемый выход $("#content").html() является:

  <paper-input label="text input"></paper-input> 

Но это дает мне результат ниже:

 <paper-input label="text input" tabindex="0" aria-disabled="false" class="x-scope paper-input-0"> 
     <paper-input-container class="style-scope paper-input x-scope paper-input-container-0"> 
     .... 
     <template is="dom-if" class="style-scope paper-input-container"></template> 
     .... 
     ... 
    </paper-input> 

есть ли железный элемент, чтобы получить сырой HTML код ,

ответ

0

Ожидаемый выход $("#content").html() верен, так как те узлы, которые были созданы полимером, теперь принадлежат DOM.

Если по какой-то причине вам нужен необработанный HTML элемента, который был создан без изменения исходного элемента, вы всегда можете клонировать его, ясно, что это дети и удалить atributes, которые были созданы с помощью полимера

var cln = $('#content paper-input').clone().html('')[0]; 
cln.removeAttribute('tabindex'); 
cln.removeAttribute('class'); 
cln.removeAttribute('aria-disabled'); 
console.log(cln.outerHTML); 
Смежные вопросы