내가하려는 것은 Materialize를 사용하는 양식을 작성하는 것입니다.하지만 실제로는 입력 된 자리 표시자를 겹치고 실제로 페이지에서 "수신하지"않은 내용이 작성됩니다. 웹에 나는 많은 사용자가이 문제 addind 입력의 레이블에 "활성"클래스를 고정 된 것으로 나타났습니다 때문에미리 작성된 내용이 Materialize에 겹쳐진 레이블
$("label[for='firstname']").addClass("active");
document.getElementById("firstname").value = "John";
,하지만이 작동하지 않습니다 : 내가 사용 JS 코드는 다음과 같다 나를. 또한
, 내가 말하는 웹 페이지에 오류가$(document).ready(function() {
Materialize.updateTextFields();
});
를 사용하려고 "catch되지 않은 오류 ReferenceError가 : 구체화가 정의되어 있지 않습니다."
이 문제를 해결할 다른 방법이 있습니까? Chrome 확장 프로그램을 사용하여 자동 완성 중이며 document.write로 스크립트를 삽입하여 html 페이지 콘텐츠를 수정할 수 없습니다.
편집 :
나는 또한 입력 필드에 수동으로 작성하는 경우, 입력의 클래스가
materialize-element-field ng-valid-pattern ng-valid-minlength ng-valid-maxlength active ng-touched ng-not-empty ng-dirty ng-valid-parse ng-valid ng-valid-required
클래스 레이블이되는
materialize-element-field ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required ng-valid-pattern ng-valid-minlength ng-valid-maxlength
에서가는 것으로 나타났습니다 전혀 바뀌지 않았다. 입력 필드 전에 다음 DIV도있다
:
<div ng-class="['materialize-element',
{
'input-half left': true,
'materialize-textinput': true,
'materialize-password': false,
'materialize-textarea': false,
'materialize-select': false,
'materialize-number': false,
'materialize-checkbox': false,
'materialize-radio': false,
'materialize-block-radio': false,
'collapsed': !selectBoxExpanded['firstname'] && false,
'expanded': selectBoxExpanded['first'] && false,
'has-icon': false && true,
'required': requiredField['ship.firstname'] || true,
'not-empty': !isModelEmpty(ship.firstname || form['ffirstname_46afgt3'].$$rawModelValue),
'valid': (isModelModified(form, 'firstname_46afgt3') && form['firstname_46afgt3'].$valid) && form['firstname_46afgt3'].$viewValue.length != 0,
'error': (isModelModified(form, 'firstname_46afgt3') && form['firstname_46afgt3'].$invalid),
'disabled': false,
'has-counter': false
}]" ng-click="selectBoxExpanded['firstname']=!selectBoxExpanded['firstname']" ng-init="initField('ship', 'firstname', '', false)" class="materialize-element input-half left materialize-textinput required">
의 I 수동 입력에 텍스트를 추가 한 후 다음을 변경 위의 DIV의 클래스 :
materialize-element input-half left materialize-textinput required not-empty valid
편집 2 :
입력란은 텍스트 앞에 다음과 같습니다.
<input class="materialize-element-field ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required ng-valid-pattern ng-valid-minlength ng-valid-maxlength" type="text" id="firstname" name="firstname_46afgt3" value="" maxlength="33" ng-pattern="/^[\u00C0-\u1FFF\u2C00-\uD7FF\u2019a-zA-Z\.\'\-\s]{1,}$/" ng-required="requiredField['ship.firstname'] || true" ng-model="ship.firstname" ng-init="validateField('firstname_46afgt3', true, 'W3sidHlwZSI6InJlcXVpcmVkIiwibGFiZWwiOiJmb3Jtcy5jaGVja291dC5kZWxpdmVyeS5tZXRhcGFjay5hZGRyZXNzLmZpcnN0bmFtZS5taXNzaW5nIiwiZGlzcGxheUxhYmVsIjoiSW5zZXJpc2NpIGlsIG5vbWUuIn0seyJ0eXBlIjoicGF0dGVybiIsImxhYmVsIjoiZm9ybXMuY2hlY2tvdXQuZGVsaXZlcnkubWV0YXBhY2suYWRkcmVzcy5maXJzdG5hbWUuaW52YWxpZCIsImRpc3BsYXlMYWJlbCI6IkNvbnRyb2xsYSBpbCBub21lLiJ9XQ==')" ng-keydown="ngKeyHandler($event)" ng-change="ngChangeHandler('firstname', 'firstname_46afgt3', false)" ng-trim="true" required="required">
그리고 내가 텍스트 작성 후 다음이 있습니다 : 내가 수동으로 편집하려고하면
<input class="materialize-element-field ng-valid-pattern ng-valid-minlength ng-valid-maxlength active ng-touched ng-not-empty ng-dirty ng-valid-parse ng-valid ng-valid-required" type="text" id="firstname" name="firstname_46afgt3" value="" maxlength="33" ng-pattern="/^[\u00C0-\u1FFF\u2C00-\uD7FF\u2019a-zA-Z\.\'\-\s]{1,}$/" ng-required="requiredField['ship.firstname'] || true" ng-model="ship.firstname" ng-init="validateField('firstname_46afgt3', true, 'W3sidHlwZSI6InJlcXVpcmVkIiwibGFiZWwiOiJmb3Jtcy5jaGVja291dC5kZWxpdmVyeS5tZXRhcGFjay5hZGRyZXNzLmZpcnN0bmFtZS5taXNzaW5nIiwiZGlzcGxheUxhYmVsIjoiSW5zZXJpc2NpIGlsIG5vbWUuIn0seyJ0eXBlIjoicGF0dGVybiIsImxhYmVsIjoiZm9ybXMuY2hlY2tvdXQuZGVsaXZlcnkubWV0YXBhY2suYWRkcmVzcy5maXJzdG5hbWUuaW52YWxpZCIsImRpc3BsYXlMYWJlbCI6IkNvbnRyb2xsYSBpbCBub21lLiJ9XQ==')" ng-keydown="ngKeyHandler($event)" ng-change="ngChangeHandler('firstname', 'firstname_46afgt3', false)" ng-trim="true" required="required">
입력 필드에 "값"태그가 전혀 감동하지 않을 것으로 보인다 및 Chrome 개발자 콘솔에서 자동 완성과 동일한 작업이 수행됩니다.
값을받지 않는 입력 필드의 예를 추가 할 수 있습니까? = '테스트' => "테스트" document.getElementById를 ('FIRST_NAME' document.getElementById를 ('FIRST_NAME') 값 :. http://materializecss.com/forms.html에, 나는 다음을 얻을) .value => "테스트" –
더 많은 문서가 추가되었습니다. –
http://stackoverflow.com/q/22843563/934239 – Xan