@@ -41,7 +41,6 @@ export default class HTMLInputElement extends HTMLElement {
41
41
public [ PropertySymbol . value ] = null ;
42
42
public [ PropertySymbol . height ] = 0 ;
43
43
public [ PropertySymbol . width ] = 0 ;
44
- public [ PropertySymbol . defaultChecked ] = false ;
45
44
public [ PropertySymbol . checked ] : boolean | null = null ;
46
45
public [ PropertySymbol . validationMessage ] = '' ;
47
46
public [ PropertySymbol . validity ] = new ValidityState ( this ) ;
@@ -62,7 +61,7 @@ export default class HTMLInputElement extends HTMLElement {
62
61
* @returns Default checked.
63
62
*/
64
63
public get defaultChecked ( ) : boolean {
65
- return this [ PropertySymbol . defaultChecked ] ;
64
+ return this . hasAttribute ( 'checked' ) ;
66
65
}
67
66
68
67
/**
@@ -71,7 +70,11 @@ export default class HTMLInputElement extends HTMLElement {
71
70
* @param defaultChecked Default checked.
72
71
*/
73
72
public set defaultChecked ( defaultChecked : boolean ) {
74
- this [ PropertySymbol . defaultChecked ] = defaultChecked ;
73
+ if ( defaultChecked ) {
74
+ this . setAttribute ( 'checked' , '' ) ;
75
+ } else {
76
+ this . removeAttribute ( 'checked' ) ;
77
+ }
75
78
}
76
79
77
80
/**
@@ -1341,7 +1344,6 @@ export default class HTMLInputElement extends HTMLElement {
1341
1344
clone [ PropertySymbol . value ] = this [ PropertySymbol . value ] ;
1342
1345
clone [ PropertySymbol . height ] = this [ PropertySymbol . height ] ;
1343
1346
clone [ PropertySymbol . width ] = this [ PropertySymbol . width ] ;
1344
- clone [ PropertySymbol . defaultChecked ] = this [ PropertySymbol . defaultChecked ] ;
1345
1347
clone [ PropertySymbol . files ] = < FileList > this [ PropertySymbol . files ] . slice ( ) ;
1346
1348
clone . #selectionStart = this . #selectionStart;
1347
1349
clone . #selectionEnd = this . #selectionEnd;
0 commit comments