<html>
    <head>
        <script>
            function runTest() {
                // Not dumping as text since the DumpRenderTree does not currently traverse child frames.
//                if (window.layoutTestController)
//                    layoutTestController.dumpAsText();
                
                var button = document.getElementById('blankButton');
                button.click();
            }
        </script>
    </head>
    <body onload="runTest()">
        <form action="resources/success.txt" method="GET" target="blankFrame">
            <input type="submit" value="form" id="blankButton">
        </form>
        <div>This tests Targetted frame submission works.  If the test is successful, the text "SUCCESS" should be shown in the iframe below.</div>
        <iframe src="about:blank" name="blankFrame"></iframe>
    </body>
</html>
