JavaScript表单提交和包含提交按钮的表单之间的区别
Difference between JavaScript form submit and a form containing a submit button
我需要理论上的澄清...JavaScript表单提交和包含提交按钮的表单有什么区别?
(我正在使用框架Struts,但我认为它不会影响行为。
我的意思是,这是我的例子,提交带有input type="submit"
的表单有什么区别?
<html:form action="search.do?method=mySearch" method="post" styleId="searchFilterForm">
<input type="hidden" name="myfield" value="">
<table border="0" class="filterclass" width="530px">
<tr>
<td class="filterheader" align="center">
<input type="submit" onclick="doMySubmit()" name="MyList" value="SEND" class="button actionbutton" />
</td>
</tr>
</table>
</html:form>
function doMySubmit() {
var myform = document.getElementById('searchFilterForm');
myform.myfield.value = "Hello World";
}
并在 JavaScript 中提交表单?
<html:form action="search.do?method=mySearch" method="post" styleId="searchFilterForm">
<table border="0" class="filterclass" width="530px">
<tr>
<td class="filterheader" align="center">
<input type="button" onclick="doMySubmit()" name="MyList" value="SEND" class="button actionbutton" />
</td>
</tr>
</table>
</html:form>
function doMySubmit() {
var myform = document.getElementById('searchFilterForm');
myform.myfield.value = "Hello World";
myform.submit();
}
最显着的区别是,通过单击提交按钮提交表单时,将有一个与单击的按钮对应的请求参数。因此,在您的示例中,使用提交按钮将有一个名称为 MyList
且值为 SEND
的请求参数。如果你在JavaScript中调用form.submit()
,就不会有。
因此,如果您在服务器端调用request.getParameter("MyList");
,则使用第一种方法将返回值为 SEND 的字符串,而第二个方法将返回 null
.当您想要根据表单是否已提交,甚至使用哪个按钮提交表单(如果您有多个按钮)来控制通过操作的流程时,这一点变得很重要。
如果您的用户禁用 javascript,他将无法提交表单。更好的做法是添加类型提交以实现辅助功能。有关此问题的更多信息
相关文章:
- jquery在表单之间切换
- 在我的Javascript和HTML之间的表单提交按钮链接中遇到问题
- HtmlService GAS在html表单之间传递变量
- 按下按键输入时输入表单和选择表单之间的冲突
- ExtJS:网格和表单之间的双向绑定
- HTML 在表单之间保存数据
- 尝试实现 ng-repeate 和表单之间的双向绑定
- JavaScript表单提交和包含提交按钮的表单之间的区别
- Jquery 在两种表单之间进行选择
- 表单验证中的表单验证io多个表单之间存在冲突
- 表单之间不同.请使用方法提交
- 在注册和登录表单之间切换
- 在特定输入字段和完整表单之间的显示之间切换表单
- 使用Javascript在表单之间传递数据时预先检查复选框
- 用一个编辑按钮在两个表单之间切换
- 使用jQuery按钮在文本和编辑表单之间来回切换
- 在表单之间传递JavaScript选择值
- 如何在HTML中的表单之间传递参数
- 在放置在同一页面中的表单之间传递值
- 在 AngularJS 中存储表单之间的状态