Thomas Broyer wrote:
2007/7/1, Philip Taylor:
WF2 says:

  "When the [form element's action] attribute is absent, UAs must act
as if the action attribute was the empty string, which is a relative
URI reference, and would thus point to the current document (or the
specified base URI, if any)."

But: http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0D%0A%3Cbase%20href%3D%22http%3A//google.com%22%3E%3Cform%3E%3Cinput%20type%3Dsubmit%3E

In IE7, FF2, FF3, Opera 9.2, it ignores the base URI and always
submits to the current page. In Safari 3, it does take account of the
base URI. In all, <form action=""> does the same as <form>. In all,
<form action="."> does take account of the base URI. Perhaps it would
be sensible to follow the majority.

Wouldn't that be a violation of RFC3986?

http://tools.ietf.org/html/rfc3986#section-4.4

Are there pages in the wild relying on that behavior (i.e. has Apple
received a bug report for pages breaking in Safari? [1])

[1] Hmm, seems like there is such a bug report, with people
misunderstanding RFC3986 ยง4.4 and relying on such broken behaviors:
http://bugs.webkit.org/show_bug.cgi?id=7763
(for the first example, it's at
http://www.polytechnique.fr/eleves/login.php, there's a <base
href="http://www.polytechnique.fr/eleves/";> and <form action="">
expected to be POSTed to login.php)

See also https://bugzilla.mozilla.org/show_bug.cgi?id=297761 where it was reported that we changed the behavior for firefox 1 and thereby broke sites.

I actually seem to recall the spec saying that action="" meant to submit to the current page. Though I can't find that in the spec right now so I might be wrong.

So the answer is that this is a web compat issue. How much of the web would break if we changed this behavior is anyones guess unfortunately.

/ Jonas

Reply via email to