Итак, я обновляю свой веб-сайт, чтобы использовать Google MDL, и переживаю время, когда знаю, что не должен этого делать.
У меня есть 2 идентичных div, оба содержат текстовое поле с тегом MDL. Единственное отличие состоит в том, что div B скрыт (с использованием класса, называемого «скрыть», с css display:none).
<div id='a'>
<div class="mdl-textfield mdl-js-textfield">
<input class="mdl-textfield__input" type="text" id="sample1">
<label class="mdl-textfield__label" for="sample1">Text...</label>
</div>
</div>
<div id='b' class='hide'>
<div class="mdl-textfield mdl-js-textfield">
<input class="mdl-textfield__input" type="text" id="sample1">
<label class="mdl-textfield__label" for="sample1">Text...</label>
</div>
</div>
Когда страница загружается, текстовое поле в div A имеет стиль MDL, как и ожидалось. Когда я показываю div B через $('#b').show(), текстовое поле не отображает стиль MDL.
Как получить текстовое поле в div B, чтобы к нему применялось форматирование MDL?
Вызов componentHandler.upgradeDom(); после отображения div B ничего не делает.
Спасибо за твою помощь!