表单提交

开发工具与关键技术:Adobe Dreamweaver JavaScript
作者:肖健勇
撰写时间:2020年4月30日

表单提交:
首先弄一个简单的表单布局
在这里插入图片描述
提交表单有两种方法:
1、 post提交
2、 get提交(默认提交方式)
两者相比,get更简单也更快,而且在大部分情况下都能用
在以下面几种情况中,使用post
1、 无法使用缓存文件,(更新服务器上的文件或数据库)
2、 向服务器发送大量数据(post没有数据量限制)
3、 发送包含未知字符的用户输入时。
两者区别:

  1. get是用来向服务器上获取数据,而post是用来想服务器传递修改数据
  2. get将表单里的数据添加到action所指向的url后面,并且两只之间使用“?”链接而各个变量之间使用"&"连接;PSOT是将表单中的数据放在form的数据体(FormData)中,按照键值对的方式,传递到所指向的action
  3. GET是不安全的,因为在传输过程中,数据被放在请求的url中这样用户可以直接在浏览器上看到提交的数据,而POST的所有操作对用户来说都是不可见的,数据都在数据体(FormData)中
  4. GET方法向URL添加数据,URL的长度是受限制的(URL的最大长度是2048个字符),POST提交无限制
  5. GET方式获取数据后,刷新不会有负面的影响,因为它只是获取数据,POST数据会被重新提交可能会产生不良的后果(浏览器应该告知用户数据会被重新提交)
  6. 数据类型的限制:GET只允许ASCII字符,POST则无限制(如果提交二进制数据(例如:图片),需要使用POST方法)

function getData() {
var name = document.getElementById(“txtName”).value;
var sex = document.getElementById(“cboSex”).value;
var address = document.getElementById(“txtAddress”).value;
if (name != “” && sex != 0 && address != “”) {
var myform = document.getElementById(“myform”);
myform.method = “get”;//提交方式
//1.可以通过参数形式接收数据
// myform.action = “/Form/GetData”;//提交地址
myform.action = “/Form/getDataByEntityClass”;//url == “/控制器/方法的名称”
myform.submit();
} else {
alert(“数据不完整!”);
}
}

function postData() {
声明变量接收input框里的值
var name = document.getElementById(“txtName”).value;
var sex = document.getElementById(“cboSex”).value;
var address = document.getElementById(“txtAddress”).value;
将其进行判断是否为空
if (name != “” && sex != 0 && address != “”) {
var myform = document.getElementById(“myform”);
myform.method = “post”;//提交方式
myform.action = “/Form/GetData”;//提交地址
1.可以通过参数形式接收数据
2.可以通过FormCollection接收数据
3.Request.Form接收表单数据
//myform.action = “/Form/getDataByFormCollection”;
//myform.action = “/Form/getDataByRequest”;
myform.action = “/Form/getDataByEntityClass”;//url == “/控制器/方法的名称”
myform.submit();
} else {
alert(“数据不完整!”);
}
}
实体类接收数据
public ActionResult getDataByEntityClass(Person person)
{
string name = person.name;
string sex = person.sex;
string address = person.address;
string str = “4.EntityClass实体类接收数据” + name + “&” + sex + “&” + address;
return Content(str);
}
创建实体类
public class Person
{
public string name { get; set; }
public string sex { get; set; }
public string address { get; set; }
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值