JavaScript表单提交和包含提交按钮的表单之间的区别
我需要一个理论上的澄清…JavaScript表单提交和包含提交按钮的表单之间有什么区别 (我正在使用该框架,但我认为它不会影响行为。) 我的意思是,这是我的示例,提交表单与输入type=“submit”有什么区别JavaScript表单提交和包含提交按钮的表单之间的区别,javascript,html,forms,struts,Javascript,Html,Forms,Struts,我需要一个理论上的澄清…JavaScript表单提交和包含提交按钮的表单之间有什么区别 (我正在使用该框架,但我认为它不会影响行为。) 我的意思是,这是我的示例,提交表单与输入type=“submit”有什么区别 函数doMySubmit(){ var myform=document.getElementById('searchFilterPerform'); myform.myfield.value=“你好世界”; } 然后在JavaScript中使用submit提交表单 <html
函数doMySubmit(){
var myform=document.getElementById('searchFilterPerform');
myform.myfield.value=“你好世界”;
}
然后在JavaScript中使用submit提交表单
<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();
}
函数doMySubmit(){
var myform=document.getElementById('searchFilterPerform');
myform.myfield.value=“你好世界”;
myform.submit();
}
如果用户禁用javascript,则无法提交表单。
更好的做法是添加一个类型submit以便于访问。
更多信息如果用户禁用javascript,则无法提交表单。 更好的做法是添加一个类型submit以便于访问。
更多信息最显著的区别是,当通过单击提交按钮提交表单时,将有一个与所单击按钮对应的请求参数。因此,在您的示例中,使用submit按钮,将有一个名为
MyList
且值为SEND
的请求参数。如果您在JavaScript中调用form.submit()
,则不会出现错误
因此,如果调用
request.getParameter(“MyList”)
在服务器端,第一个方法将返回一个值为SEND的字符串,第二个方法将返回null
。当您希望根据是否已提交表单,甚至是使用哪个按钮提交表单(如果您有多个按钮)来控制操作流程时,这一点非常重要.最显著的区别是,当通过单击“提交”按钮提交表单时,将有一个与单击的按钮对应的请求参数。因此,在您的示例中,使用submit按钮,将有一个名为MyList
且值为SEND
的请求参数。如果您在JavaScript中调用form.submit()
,则不会出现错误
因此,如果调用
request.getParameter(“MyList”)
在服务器端,第一个方法将返回一个值为SEND的字符串,第二个方法将返回null
。如果您想根据表单是否已提交,或者哪一个按钮用于提交表单(如果您有多个按钮)来控制操作流程,则这一点非常重要。问题是,为什么这样做?为什么JS表单提交不发送按钮?这是设计还是一个bug?如果是前者,为什么要这样做?@user3621633一个表单可以有多个提交按钮。它应该为哪一个发送参数?问题是为什么行为是这样的?为什么JS表单提交不发送按钮?这是设计还是一个bug?如果是前者,为什么要这样做?@user3621633一个表单可以有多个提交按钮。它应该为哪一个发送参数?
<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();
}