提交表单,提交表单的两种方法
form表单提交的几种方法
方法一:利用form的onsubmit()函数
Html代码
script type="text/javascript"
function validateForm(){
if(document.reply.title.value == ""){ //通过form名来获取form
alert("please input the title!");
document.reply.title.focus();
return false;
}
if(document.forms[0].cont.value == ""){ //通过forms数组获取form
alert("please input the content!");
document.reply.cont.focus();
return false;
}
return true;
}
form name="reply" method="post" onsubmit="return validateForm( );"
input type="text" name="title" size="80" /br /
textarea name="cont" cols="80" rows="12"/textareabr /
input type="submit" value="提交"
/form
注意:
1.onsubmit属性内容一定要有return关键字,否则函数会直接执行,不会返回
2.validateForm一定要返回一个boolean类型的返回值
3.提交按钮要写成submit类型的
方法二:利用input类型为submit组件的onclick()函数
1.将上面form标签中的onsubmit="return validateForm()"属性,去掉。
2.为“提交”按钮添加onclick事件,如下:
input type="submit" value="提交" onclick="return validateForm();"
方法三:利用button组件的onclick()函数,手动提交
Html代码
script type="text/javascript"
function modifyItem() {
if (trim(document.getElementById("itemName").value) == "") {
alert("物料名称不能为空!");
document.getElementById("itemName").focus();
return;
}
with (document.getElementById("itemForm")) {
method = "post";
action = "item.do?command=modifypageNo=${itemForm.pageNo}";
submit();
}
}
//返回
function goBack() {
window.self.location = "item.do?command=listpageNo=${itemForm.pageNo}";
}
/script
form name="itemForm" id="itemForm"
input name="itemNo" type="text" id="itemNo" value="${ item.itemNo }"
input name="itemName" type="text" id="itemName" value="${ item.itemName }"
input name="btnModify" type="button" id="btnModify" value=“修改" onclick="modifyItem()"
/form
注意:
1.提交时,设置form的action和methods属性,然后利用form.submit()函数提交。
总结:
1.对form中的组件验证时,前两个使用的是name属性,包括form自身的。
2.如果提交表单时没有反应,同时确定提交表单部分代码没有问题,请查看提交表单前面的js代码,有时前面js的错误会引发莫名其妙的问题。
表单的提交有两种方式:GET和POST,这两种方式的区别是什么?
一、指代不同
1、GET:从指定的资源请求数据。
2、POST:向指定的资源提交要被处理的数据
二、规则不同
1、GET: 请求可被缓存; 请求保留在浏览器历史记录中; 请求可被收藏为书签;请求不应在处理敏感数据时使用; 请求有长度限制; 请求只应当用于取回数据。
2、POST:请求不会被缓存; 请求不会保留在浏览器历史记录中; 不能被收藏为书签; 请求对数据长度没有要求。
三、数据要求不同
1、GET:当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。
2、POST:发送数据无限制。POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。
参考资料来源:百度百科-HTTP请求
参考资料来源:百度百科-post
Js表单提交
表单提交是刚开始学js的朋友很迷惑的一个问题,怎么提交,怎么阻止默认提交,怎么提交表单不跳转等等问题,下面是一些示例
原始的表单提交有 button 按钮提交和 input / 类型的。它们又什么区别呢?
(1) 默认表单提交
(2)默认不会提交表单
(3) 如果在 form ,我们使用了 type=''submit 属性,但是不让表单默认提交,有什么办法呢?看下面
(4) 如果在 form ,我们使用了 type=''button 属性,但是还是需要提交表单,这是可以使用ajax来提交,好处是可以自己控制提交,并且页面不会跳转
(5)若是使用默认提交的方法,且提交之前验证表单,方法看下面
(6) 若是使用了 type='button' 属性,但是还是想实现默认提交的方式怎么办? 看下面
(7) 下面的提交会发生什么?
分析 : 点击提交按钮:
(1)当表单验证失败时,不会触发 form.submit() 函数,所以可以触发 form 的 onsubmit 句柄,又因为该句柄 return false 所以表单不会从该句柄处默认提交,所以 会在控制台打印出 表单的onsubmit事件句柄在form.submit()调用时失效'
(2)当表单验证成功时,会触发 form.submit() 函数提交表单,又因为 form.submit()提交表单的方式与用户单击 Submit 按钮一样,但是表单的 onsubmit 事件句柄不会被调用,所以 控制台不会打印出 表单的onsubmit事件句柄在form.submit()调用时失效
现在表单默认提交的方式基本没人用了,都是ajax异步提交。但是了解一些还是好的。。。
提交表单是啥子
你说的是网页的表单吧,一般提交表单有两种方法:get、post
表单的作用就是传递数据,简单的说吧,像留言板,你在里面留了言点提交后,就是一个提交表单的过程,然后你可以用$_GET、$_POST要接收用户提交上来的表单内容,再进行其他操作
html表单的几种提交方式总结
最普通最常用最一般的方法就是用submit type..看代码:?
复制代码
代码如下:
form?name=”form”?method=”post”?action=”#"?
input?type=”submit”?name=”submit”?value=”提交"?
/form
另外,还有一种常用的方法是使用图片:?
复制代码
代码如下:
form?name=”form”?method=”post”?action=”#?"?
input?type=”image”?name=”submit”?src=”btnSubmit.jpg”?
/form
第三种是使用链接来提交表单,用到了javascript的DOM模型:?
复制代码
代码如下:
form?name=”form”?method=”post”?action=”#”?
a?href=”javascript:form.submit();”提交/a?
/form
这种方法实际上是调用了一个javascript函数,使用javacript函数来提交表单,方法就非常多非常灵活了,比如可以把它加入到任意一个标签的onclick事件中:?
复制代码
代码如下:
form?name=”form”?method=”post”?action=”#”?
div?onclick=”javascript:form.submit();”?
span提交/span?
/div?
/form
但是,如果一个表单里有需要有多个提交按钮怎么办呢??
比如一个表单里的提交按钮所指向的处理页面不同,这样由于表单在定义的时候就已经确定下表单数据的处理页面,所以单纯地在表单里放多个提交按钮是没有办法达到目的的。这就需要javascript。?
首先定义一个函数:?
复制代码
代码如下:
script?language=javascript?
function?query(){?
form.action=”query.php”;?
form.submit();}?
function?update(){?
form.action=”update.php”;?
form.submit();}?
/script
通过javascript改变form的action属性值,这样就可以实现多提交按钮而且功能不同了,页面内代码如下:?
复制代码
代码如下:
form?name=”form”?method=”post”?action=”#”?
input?type=”button”?name=”query”?onclick=”query();”?value=”查询”?
input?type=”button”?name=”update”?onclick=”update();”?value=”更新”?
/form
上面一段代码,使用的是普通的按钮,而提交功能的实现方法是在它的onclick事件中调用javascript函数.?
有了上面这几种提交表单的方法,我想差不多够应付复杂的表单了.
如何批量提交form表单中的数据?
用request.getParameterValues()或者用request.getParameter()就可以批量提交form表单中的数据。
一、input type="submit" 定义用于向表单处理程序(form-handler)提交表单的按钮。表单处理程序通常是包含用来处理输入数据的脚本的服务器页面,表单处理程序在表单的 action 属性中指定。
二、实例
form action="action_page.php"
First name:br
input type="text" name="firstname" value="Mickey"
br
Last name:br
input type="text" name="lastname" value="Mouse"
brbr
input type="submit" value="Submit"
/form
三、action 属性定义在提交表单时执行的动作,向服务器提交表单的通常做法是使用提交按钮。通常,表单会被提交到 web 服务器上的网页。
四、如果表单提交是被动的(比如搜索引擎查询),并且没有敏感信息。当您使用 GET 时,表单数据在页面地址栏中是可见的:action_page.php?firstname=Mickeylastname=Mouse。
五、如果要正确地被提交,每个输入字段必须设置一个 name 属性。本例只会提交 "Last name" 输入字段。
六、实例
form action="action_page.php"
First name:br
input type="text" value="Mickey"
br
Last name:br
input type="text" name="lastname" value="Mouse"
brbr
input type="submit" value="Submit"
/form