<!doctype html>
<title>Link with onclick form submit to javascript url with document.write and href navigation </title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<iframe id="test" name="test"></iframe>
<form target="test" action="javascript:(function() {document.write('<script>parent.postMessage(&quot;write&quot;, &quot;*&quot;)</script>'); return '<script>parent.postMessage(&quot;click&quot;, &quot;*&quot;)</script>'})()"></form>
<a target="test" onclick="document.forms[0].submit()" href="href.html">Test</a>
<script>
var t = async_test();
var events = [];
t.step(function() {
  document.getElementsByTagName("a")[0].click()});
onmessage = t.step_func(
  function(e) {
    events.push(e.data);
    if (events.length === 2) {
      assert_array_equals(events, ["write", "href"]);
      t.done();
    }
  });
</script>
