1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
<!DOCTYPE html>
<title>Custom Elements: CEReactions on HTMLButtonElement interface</title>
<meta name="author" title="Zhang Xiaoyu" href="xiaoyux.zhang@intel.com">
<meta name="assert" content=" autofocus, disabled, formAction, formEnctype,
formMethod, formNoValidate, formTarget, name, type, value
of HTMLButtonElement interface must have CEReactions">
<meta name="help" content="https://html.spec.whatwg.org/#htmlbuttonelement">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="../../resources/custom-elements-helpers.js"></script>
<script src="../resources/reactions.js"></script>
<body>
<script>
function getParentElement(parentElementName) {
let parentElement = document.createElement(parentElementName);
document.body.appendChild(parentElement);
return parentElement;
}
function setAttributes(instance) {
instance.setAttribute('type', 'submit');
}
testReflectBooleanAttribute(
'autofocus', 'autofocus', 'autofocus on HTMLButtonElement',
'button', HTMLButtonElement
);
testReflectBooleanAttribute(
'disabled', 'disabled','disabled on HTMLButtonElement',
'button', HTMLButtonElement
);
testReflectAttribute(
'name', 'name', 'intel',
'intel1', 'name on HTMLButtonElement', 'button',
HTMLButtonElement
);
testReflectAttribute(
'value', 'value', 'HTML',
'CSS', 'value on HTMLButtonElement', 'button',
HTMLButtonElement
);
testReflectAttributeWithParentNode(
'type', 'type', 'submit',
'reset', 'type on HTMLButtonElement', 'button',
() => getParentElement('form'), HTMLButtonElement
);
testReflectAttributeWithDependentAttributes(
'formAction', 'formaction', 'intel.asp',
'intel1.asp', 'formAction on HTMLButtonElement', 'button',
() => getParentElement('form'), instance => setAttributes(instance),
HTMLButtonElement
);
testReflectAttributeWithDependentAttributes(
'formEnctype', 'formenctype', 'text/plain', 'multipart/form-data',
'formEnctype on HTMLButtonElement', 'button', () => getParentElement('form'),
instance => setAttributes(instance),
HTMLButtonElement
);
testReflectAttributeWithDependentAttributes(
'formMethod', 'formmethod', 'get',
'post', 'formMethod on HTMLButtonElement', 'button',
() => getParentElement('form'), instance => setAttributes(instance),
HTMLButtonElement
);
testReflectBooleanAttributeWithDependentAttributes(
'formNoValidate', 'formnovalidate', 'formNoValidate on HTMLButtonElement',
'button', () => getParentElement('form'),
instance => setAttributes(instance),
HTMLButtonElement
);
testReflectAttributeWithDependentAttributes(
'formTarget', 'formtarget', '_blank',
'_self', 'formTarget on HTMLButtonElement', 'button',
() => getParentElement('form'), instance => setAttributes(instance),
HTMLButtonElement
);
</script>
</body>
|