Source code
Revision control
Copy as Markdown
Other Tools
<!DOCTYPE html>
<meta charset=utf-8>
<title>valid action</title>
<form action="a:foo.com"></form><!-- scheme-private -->
<form action="foo:/"></form><!-- scheme-private-slash -->
<form action="foo://"></form><!-- scheme-private-slash-slash -->
<form action="foo:/bar.com/"></form><!-- scheme-private-path -->
<form action="c:/foo"></form><!-- scheme-private-single-letter -->
<form action="madeupscheme:/example.com/"></form><!-- scheme-private-single-slash -->
<form action="file:/example.com/"></form><!-- scheme-file-single-slash -->
<form action="ftps:/example.com/"></form><!-- scheme-ftps-single-slash -->
<form action="gopher:/example.com/"></form><!-- scheme-gopher-single-slash -->
<form action="ws:/example.com/"></form><!-- scheme-ws-single-slash -->
<form action="wss:/example.com/"></form><!-- scheme-wss-single-slash -->
<form action="javascript:/example.com/"></form><!-- scheme-javascript-single-slash -->
<form action="mailto:/example.com/"></form><!-- scheme-mailto-single-slash -->
<form action="madeupscheme:example.com/"></form><!-- scheme-private-no-slash -->
<form action="ftps:example.com/"></form><!-- scheme-ftps-no-slash -->
<form action="gopher:example.com/"></form><!-- scheme-gopher-no-slash -->
<form action="wss:example.com/"></form><!-- scheme-wss-no-slash -->
<form action="mailto:example.com/"></form><!-- scheme-mailto-no-slash -->
<form action="data:text/plain,foo"></form><!-- scheme-data-no-slash -->
<form action="http💩//:foo"></form><!-- path-contains-pile-of-poo -->
<form action="http://%25DOMAIN:foobar@foodomain.com"></form><!-- userinfo-username-contains-percent-encoded -->
<form action="//foo/bar"></form><!-- scheme-schemeless-relative -->
<form action="/"></form><!-- path-slash-only-relative -->
<form action="/a/b/c"></form><!-- path-simple-relative -->
<form action="/a%2fc"></form><!-- path-percent-encoded-slash-relative -->
<form action="/a/%2f/c"></form><!-- path-percent-encoded-slash-plus-slashes-relative -->
<form action="?"></form><!-- query-empty-no-path-relative -->
<form action="#"></form><!-- fragment-empty-hash-only-no-path-relative -->
<form action="#/"></form><!-- fragment-slash-relative -->
<form action="#;?"></form><!-- fragment-semicolon-question-mark-relative -->
<form action="#β"></form><!-- fragment-non-ascii-relative -->
<form action="foo.com"></form><!-- scheme-none-relative -->
<form action=":"></form><!-- path-colon-relative -->
<form action=":a"></form><!-- path-leading-colon-letter-relative -->
<form action=":foo.com"></form><!-- path-leading-colon-chars-relative -->
<form action=":/"></form><!-- path-leading-colon-slash-relative -->
<form action=":#"></form><!-- path-leading-colon-hash-relative -->
<form action=":23"></form><!-- path-leading-colon-number-relative -->
<form action="/:23"></form><!-- path-slash-colon-number-relative -->
<form action="::"></form><!-- path-leading-colon-colon-relative -->
<form action="::23"></form><!-- path-colon-colon-number-relative -->
<form action="/💩"></form><!-- path-slash-pile-of-poo -->
<form action="file:"></form><!-- scheme-file-scheme-only -->
<form action="file:/"></form><!-- scheme-file-slash-only -->
<form action="file://"></form><!-- scheme-file-slash-slash-only -->
<form action="file:test"></form><!-- scheme-file-no-slash -->