blob: 15a4f5da98834ba694131596f98a75fd6da5b02b [file] [log] [blame]
<DOCTYPE html>
<html>
<body>
<script src="../../resources/js-test.js"></script>
<script>
description("Tests that form submission gets cancelled when the form gets detached from inside the formdata event handler.");
jsTestIsAsync = true;
onload = () => {
let form = document.getElementById("testForm");
frame = document.getElementById("testFrame");
frame.onload = () => {
// Form submission should have been cancelled since the form was detached in the
// formdata event handler. As a result, we should continue the origin test2.txt
// navigation instead of doing the test.txt form navigation.
shouldBeTrue("frame.contentWindow.location.href.indexOf('test2.txt') != -1");
finishJSTest();
};
form.addEventListener('formdata', e => {
form.remove();
});
frame.src = "resources/test2.txt";
form.submit();
}
</script>
<iframe id="testFrame" name="testFrame" style="display:none"></iframe>
<form id="testForm" action="resources/test.txt" target="testFrame" style="display:none">
<input name="foo" value="bar">
<form>
</body>
</html>