MDC-Web: mdc-text-field- обведено с предварительно заполненным значением
Я предварительно заполняю несколько текстовых полей, а границы не отображаются.
Я использую, например, следующий JavaScript для предварительного заполнения полей, но контур не отображается, пока я не щелкну / не щелкну поле. Я старался
var doc = document;
doc.getElementById("other-number-tf-ex-input").parentElement.classList.add("mdc-text-field--upgraded");
doc.getElementById("other-number-tf-ex-input").nextElementSibling.classList.add("mdc-text-field__label--float-above");
doc.getElementById("other-number-tf-ex-input").value = values[1].otherPhoneExtensionCode;
window.mdc.autoInit();
HTML это:
<div class="account-telephone-outlined-wrapper">
<div class="mdc-text-field mdc-text-field--outlined mdc-text-field--dense tel-medium" data-mdc-auto-init="MDCTextField">
<input required pattern="^[0-9]*$" type="text" id="cellular-number-tf-cc-input" class="mdc-text-field__input" aria-controls="cellular-number-tf-cc-message">
<label for="cellular-number-tf-cc-input" class="mdc-text-field__label">1</label>
<div class="mdc-text-field__outline">
<svg>
<path class="mdc-text-field__outline-path" d=""/>
</svg>
</div>
<div class="mdc-text-field__idle-outline"></div>
</div>
<p class="mdc-text-field-helper-text mdc-text-field-helper-text--validation-msg" id="cellular-number-tf-cc-message">
00000
</p>
</div>
1 ответ
Решение
Вы должны явно создать экземпляр объекта MDCTextField, а затем установить значение:
var doc = document;
var field = new mdc.textField.MDCTextField(doc.getElementById("other-number-tf-ex-input-container"));
field.value = values[1].otherPhoneExtensionCode;
Это просто работает для меня и вызывает плавающий ярлык.
Обратите внимание на id другого номера-tf-ex-input-container: он должен указывать на контейнер mdc-text-field div.
Я устанавливаю только обычную отключенную конфигурацию текстового поля (отключенный класс и свойство disabled ввода), но программно устанавливаю значение, например:
myMDCtextfield.value = "myvalue";
И это вызывает плавающий ярлык:)