HTML <form> 标签的 method 属性
method 属性规定如何发送表单数据(表单数据发送到 action 属性所规定的页面)。
表单数据可以作为 URL 变量(method="get")或者 HTTP post (method="post")的方式来发送。
实例
在下面的例子中,表单数据将通过 method 属性附加到 URL 上:
<form action="form_action.asp" method="get"
>
<p>First name: <input type="text" name="fname" /></p>
<p>Last name: <input type="text" name="lname" /></p>
<input type="submit" value="Submit" />
</form>
method 属性
浏览器使用 method 属性设置的方法将表单中的数据传送给服务器进行处理。共有两种方法:POST 方法和 GET 方法。
如果采用 POST 方法,浏览器将会按照下面两步来发送数据。首先,浏览器将与 action 属性中指定的表单处理服务器建立联系,一旦建立连接之后,浏览器就会按分段传输的方法将数据发送给服务器。
在服务器端,一旦 POST 样式的应用程序开始执行时,就应该从一个标志位置读取参数,而一旦读到参数,在应用程序能够使用这些表单值以前,必须对这些参数进行解码。用户特定的服务器会明确指定应用程序应该如何接受这些参数。
另一种情况是采用 GET 方法,这时浏览器会与表单处理服务器建立连接,然后直接在一个传输步骤中发送所有的表单数据:浏览器会将数据直接附在表单的 action URL 之后。这两者之间用问号进行分隔。
一般浏览器通过上述任何一种方法都可以传输表单信息,而有些服务器只接受其中一种方法提供的数据。可以在 <form> 标签的 method (方法)属性中指明表单处理服务器要用方法来处理数据,使 POST 还是 GET。
POST 还是 GET?
如果表单处理服务器既支持 POST 方法又支持 GET 方法,那么你该选择哪种方法呢?下面是有关这方面的一些规律:
- 如果希望获得最佳表单传输性能,可以采用 GET 方法发送只有少数简短字段的小表单。
- 一些服务器操作系统在处理可以立即传递给应用程序的命令行参数时,会限制其数目和长度,在这种情况下,对那些有许多字段或是很长的文本域的表单来说,就应该采用 POST 方法来发送。
- 如果你在编写服务器端的表单处理应用程序方面经验不足,应该选择 GET 方法。如果采用 POST 方法,就要在读取和解码方法做些额外的工作,也许这并不很难,但是也许你不太愿意去处理这些问题。
- 如果安全性是个问题,那么我们建议选用 POST 方法。GET 方法将表单参数直接放在应用程序的 URL 中,这样网络窥探者可以很轻松地捕获它们,还可以从服务器的日志文件中进行摘录。如果参数中包含了信用卡帐号这样的敏感信息,就会在不知不觉中危及用户的安全。而 POST 应用程序就没有安全方面的漏洞,在将参数作为单独的事务传输给服务器进行处理时,至少还可以采用加密的方法。
- 如果想在表单之外调用服务器端的应用程序,而且包括向其传递参数的过程,就要采用 GET 方法,因为该方法允许把表单这样的参数包括进来作为 URL 的一部分。而另一方面,使用 POST 样式的应用程序却希望在 URL 后还能有一个来自浏览器额外的传输过程,其中传输的内容不能作为传统 <a> 标签的内容。
明确传递参数
前面的一些建议也可以作为选择此种方式的一定解释。假设你有一个很简单的表单,其中只包含 x 和 y 这两个参数。在对这些元素的值进行编码时,它们的形式如下所示:
x=28&y=66
如果表单采用了 method=GET,那么用来引用服务器端应用程序的 URL 将如下所示:
http://www.example.com/example/program?x=28&y=66
在任何时候我们都可以创建一个传统的 <a> 标签,用它在调用带有所需参数值的表单,其形式如下所示:
<a href="http://www.example.com/example/program?x=28&y=66">
唯一的问题是,分隔参数所用的 & 符号也是字符实体中的插入符号。如果在 <a> 标签的 href 属性中放入一个 & 符号,浏览器就会将其后面的字符替换成相应的字符实体。
为了防止出现这种情况,我们必须用它的实体对等物来替换 & 符号,也就是用 "&" 或 "&" 来替换。替换之后,上面的那个引用服务器应用程序的非表单示例将如下所示:
<a href="http://www.example.com/example/program?x=28&y=66">
由于这样还是不能在 URL 中使用 & 符号,并且有可能在将来带来混乱,因此我们鼓励服务器设置最后也能够接受用分号作为参数分隔符。您也可以看看自己的服务器文档,了解服务器是否支持这种功能。
语法
<form target="value">
属性值
_blank | 在新窗口中打开。 |
_self | 默认。在相同的框架中打开。 |
_parent | 在父框架集中打开。 |
_top | 在整个窗口中打开。 |
framename | 在指定的框架中打开。 |
相关推荐
<br><br>目录 : <br>第0章 认识Delphi <br><br>0-1 前言 <br>0-2 Delphi简介 <br>0-3 进入Delphi7 <br>0-4 退出Delphi <br><br>第1章 常用的窗口工具 <br><br>1-1 窗体(Form) <br>1-2 代码编辑器(Code Editor) ...
<form action="#" method="post"> 爱好(多选):<br /> <select multiple="multiple" size="4"> <!--设置多选和可见选项数--> <option>读书</option> <option selected="selected">写代码</option> <!--设置默认选中...
1.表单:<form></form> 主要属性:id name action method 2.input元素:<input/> 主要属性:name type value class type: text submit button radio checkbox hidden reset file password 3....
- 为登录和注册表单创建`<form>`元素,并设置适当的`action`和`method`属性。 - 使用`<input>`元素创建用户名、密码、电子邮件等字段,并设置正确的`type`属性。 - 添加`<button>`或`<input type="submit">`元素...
<p>one</p> <div><p>two</p></div> <p>three</p> jQuery 代码: $("div > p"); 结果: [ <p>two</p> ] -------------------------------------------------------------------------------- 在文档的第一个表单...
第一步:在xpage中插入<div dojoType=”dijit.form.Button” id=”dojoBtn”></div> 第二步:在xpage中插入<xp:scriptBlock></xp:scriptBlock> 第三步:编写客户端javascript <div dojoType="dijit.form....
标记在使用时,用尖括号 "<>",标记的分类 1、封闭类型的标记 也称为 "双标记" , 必须成对出现 语法:<标记>内容</标记> Demo : 1、创建 p 标记 --<p>...</p> 2、创建 div 标记 -- <div></div> 3、创建 ...
其它的运行符可以作用于数字和日期,但不能作用于字符串,大部分的时候,使用gt等字母运算符代替>会有更好的效果,因为 FreeMarker会把>解释成FTL标签的结束字符,当然,也可以使用括号来避免这种情况,如:<#if (x>y)> ...
* <div><p>wwwwwwww</p></div> * 设置div标签里面p标签的样式,嵌套标签里面的样式 * div p { background-color: green; } (2)组合选择器 * <div>1111</div> <p>22222</p> * 把div和p标签设置成相同的...
测试: test.html 代码: 代码如下: <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”> <...form method=”post” action=”#”> 查询类型<select id=”selectType” name=”selectType”
method是指定数据如何发送到服务器的一个属性,实际就是提交数据,下面举个例子为大家简单介绍下Form表单的method属性的使用及注意事项,感兴趣的朋友可以参考下
项目基于.NET 4.5构建,语法版本C#6.0,包含日常编程多数的常用封装,... //清理后:<div><span><a href="/users/account/LogOff">退出</a></span></div> 5.整理操作系统的内存: Windows.ClearMemorySilent();
4. destroy-method="close"> 5. <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> 6. <property name="url" value="jdbc:oracle:thin:@localhost:1521:ora9i"/> 7. <property ...
以上是我们常用的一些form属性 第二个知识点:H5新的输入型控件 (一)email:电子邮箱文本框,跟普通的没什么区别 1.当输入不是邮箱的时候,验证不通过 2.移动端键盘会有变化 (二)tel:电话号码 1.主要在...
html5之前,表单内的从属元素需要放入标签中,现在可以为标签指定form标签即可 点评:该功能解决了我们实际中遇到的一些问题,比如iframe模拟异步图片上传时,就必须将图片写到form外。 formaction formmethod ...
5 <FORM method=post action=""> <SCRIPT id=editor type=text/plain name="myContent"> </SCRIPT> <INPUT value=提交 type=submit name=submit> </FORM> 3)后端接收程序可以通过如下几种方式来获取编辑器中的...
JSF的无状态实现方式很直观,处理<f:view>的TagHandler将其布尔值属性transient 传递给UIViewRoot#setTransient即可。如果页面设置为临时的,JSF StateManager就不存储它的任何数据,页面还原时,它也会被创建为无...
<form id=“form1” runat=“server”> <div> </div> </form> </body> </html> 编译并运行,即可看到一个空白的页面被运行了。ASP.NET单文件页模型在创建并生成时,开发人员编写的类将编译成程序集,并将该程序...
9.1 使用表单标签——form 182 9.1.1 处理动作——action 182 9.1.2 表单名称——name 183 9.1.3 传送方法——method 183 9.1.4 编码方式——enctype 184 9.1.5 目标显示方式——target 185 9.2...