summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/fast/forms/submit-add-remove-element.html
blob: c54f4a335d592de11618f9e9d25fa602131eb59c (plain)
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
<!DOCTYPE html>
<html>
<head>
<script src="../../resources/js-test.js"></script>
</head>
<body>
<form method="GET" id="form" onsubmit="formSubmit();afterSubmit(form);" target="target">
    <input type="text" id="textData" name="textData" value="a">
    <input type="submit" id="submitButton" name="submitform" value="Step">
</form>
<iframe id="target" name="target"></iframe>
<script>
description('Test that form.submit() when submitted from JS, form element added and removed, should submit the form without added element');

var hidden;
function formSubmit(event)
{
    var textData = document.getElementById('textData');
    var form = document.getElementById('form');
    var submit = document.getElementById('submitButton');
    textData.value = 'b';
    hidden = document.createElement('hidden');
    hidden.value = submit.value;
    hidden.name = submit.name;
    form.appendChild(hidden);
    form.submit();
    return true;
}

function afterSubmit(form)
{
    form.removeChild(hidden);
}

document.getElementById('target').onload = function(event) {
    shouldBeEqualToString('event.target.contentWindow.location.search', '?textData=b&submitform=Step');
    finishJSTest();
}

window.onload = function() {
    document.getElementById('submitButton').click();
}

if (window.testRunner)
    window.jsTestIsAsync = true;
</script>
</body>
</html>