form标签的action属性是一个表单当中必须的属性,action属性规定当提交表单时,向何处发送表单数据。form表单中的action属性的值是表单提交给的url,如果我们没有设置action属性,那么默认的表单还是提交给当前页面。
一、html form标签的action属性
form标签的action属性是一个表单当中必须的属性,action属性规定当提交表单时,向何处发送表单数据。form表单中的action属性的值是表单提交给的url,如果我们没有设置action属性,那么默认的表单还是提交给当前页面。
- action=””和action=”#”、没有action属性的作用相同,都是提交到当前页面(也就是document.location.href)
- action=”http://currentPage.xxx”如果http://currentPage.xxx表示当前页面,则提交到当前页面,同事跳转到当前页面,当然就看不到url的变化;如果http://currentPage.xxx是非当前页面,则提交到非当前页面,也跳转到非当前页面
- 表单提交到自身时 action=””与action=”http://currentPage.xxx”的区别:
通常为了省事,我们一般将表单的action属性设为action=””/action=”#”或者干脆不写,但是这会造成一个问题,就是其实将action设为action=””时 , 表单提交时真正提交的页面是action=”currentPage.xxx?arguments=values&….”,也就是如果当前页面带有参数,参数也一并会提交,而且参数的优先级会高于<form>控件提交的参数,即如果action=”currentPage.xxx?arguments=values&….”中的arguments有与<form>元素名相同的时候,获取值时action=”currentPage.xxx?arguments=values&….”值会将<form>的值覆盖,从页得到不正确的值.
例:SpecTop.asp 页面是表单要提交的页面,且有从上级页面传递过来参数
action=””真正提交时的页面:SpecTop.asp?ClassID=000100200005&SpeID=947&SpeType=3
如果<form>中有<input type=”text” name=”SpeID” value=”1000”/>,提交时得到的值将会是947,而不是1000,而action=”currentPage.xxx”就能得到1000。
延伸阅读:
二、HTML的组织内容
<p>定义一个段落。
<hr>代表章节、文章或其他长内容中段落之间的分隔符。
<pre>代表其内容已经预先排版过,格式应当保留 。
<blockquote>代表引用自其他来源的内容。
<ol>定义一个有序列表。
<ul>定义一个无序列表。
<li>定义列表中的一个列表项。
<dl>定义一个定义列表(一系列术语和其定义)。
<dt>代表一个由下一个<dd>定义的术语。
<dd>代表出现在它之前术语的定义。
<figure>代表一个和文档有关的图例。
<figcaption>代表一个图例的说明。
<div>代表一个通用的容器,没有特殊含义。