如果您通过Javascript(即提交表单
formElement.submit()或任何等价物),然后 无
的提交按钮被认为是成功的,没有它们的值都包含在提交的数据。(请注意,如果您使用提交表单,
submitElement.click()那么您所引用的提交就被认为是活动的;这并没有真正落到您的问题的范围之内,因为此处的提交按钮是明确的,但我想我应该将其包括在内对于那些阅读了第一部分的人,并且想知道如何通过JS表单提交成功地完成一个提交按钮。当然,表单的onsubmit处理程序仍然会以这种方式触发,而他们不会通过,
form.submit()因此这是另一回事了……)
如果在非textarea字段中通过按Enter提交表单,则实际上取决于用户代理在此处确定所需内容。该规范不说有关使用输入在文本输入字段键的同时提交表单什么(如果你标签的按钮,使用空间或任何激活它,然后还有为特定的提交按钮是没有问题的明确使用)。它只说要激活一个提交按钮就必须提交一个表单,甚至不需要输入例如文本输入就可以提交该表单。
我相信InternetExplorer会选择源中最先出现的“提交”按钮;我觉得Firefox和Opera选择的TabIndex最低的按钮,如果没有其他定义,则会退回到第一个定义的按钮。关于提交者是否具有非默认值属性IIRC,还存在一些复杂问题。
要解决的问题是,这里没有定义明确的标准,这完全取决于浏览器的想法-
因此,无论您在做什么,都应尽可能避免依赖任何特定的行为。如果您真的必须知道,您可能可以找出各种浏览器版本的行为,但是当我前一段时间进行调查时,存在一些相当复杂的条件(当然,这些条件可能会随新的浏览器版本而改变),我建议您尽可能避免它!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)