当前位置: 首页 > 面试题库 >

输入名称为“ submit”时如何发送带有Javascript的表单?

薛涛
2023-03-14
问题内容

问题: 如果一个表单输入具有名称,submit如何使用Javascript发送表单?

背景:
我正在使用隐藏的HTML表单将用户重定向到另一个页面。我不能在(隐藏的)输入上更改名称,因为另一页在另一台服务器上,并且输入必须完全相同。我的HTML表单如下所示:

<form id="redirectForm" method="post" action="http://www.example.com/">
  <input name="search" type="hidden" value="search for this" />
  <input name="submit" type="hidden" value="search now" />
</form>

我今天使用以下javascript行自动发送表单:

document.getElementById('redirectForm').submit();

但是,由于一个输入的名称是“提交”(不能是其他名称,否则另一台服务器将无法处理该请求),因此请document.getElementById('redirectForm').submit引用输入,因为它会覆盖form函数submit()

Firefox中的错误消息是:Error: document.getElementById("requestform").submit is not a function。Safari中出现类似的错误消息。


问题答案:

值得注意的是 :将输入名称更改为“提交”以外的其他名称通常要容易得多。请仅在确实不可能的情况下使用以下html" target="_blank">解决方案。

您需要submit从其他形式获取函数:

document.createElement('form').submit.call(document.getElementById('redirectForm'));

如果已经有了另一个<form>标签,则可以使用它代替创建另一个标签。



 类似资料:
  • 问题内容: 为了提高效率,我想知道如果省略name属性或将其设置为null,textarea中的文件或文本是否仍会传输到服务器。例如 我注意到如果执行此操作,则服务器上的数据不可用。 问题答案: 如果我理解正确,W3C规范会要求每个表单输入元素都指定一个属性。否则,该元素将不会被处理。资源

  • 我正在尝试创建一个程序,允许用户说,输入(橙色/苹果/香蕉等),然后输入他们想要购买的数量,程序将计算总数。然而,在尝试了字符串(不能将它们相乘)和其他一些选项之后,我陷入了困境。我和无数的向导一起浏览了这个论坛,但没有结果。我插入的IF语句只是为了让它正常工作而做的最后一次尝试,当然,它崩溃了。我相信这都是些基本的东西,但我对这方面还很陌生。我还想显示一个列表供选择,可能类似于橘子:Qnty:(

  • 我面临Elasticsearch结果的问题,该结果在属性名称中使用@。json结果片段: {“\u index”:“logs-2015.12.31”,“\u type”:“log”,“\u id”:“AVH4eA4QKV0mbJuiIHO1”,“\u score”:null,“\u source”:{“@timestamp”:“2015-12-31T14:36:35.378Z”,“beat”:{“

  • 这个问题是如何为WS设置参数的扩展。播放2.1 Java中的post() 我的Web服务请求处理程序如下 因为WSaskestHolder接受一个

  • 问题内容: 我正在尝试使用包含CSV文件的AJAX提交表单。因此,想法是使用ajax发送表单,通过生成表在不同文件中对其进行处理,然后将处理后的表回调回页面。 我所拥有的是 JavaScript是 我在萤火虫中遇到这种错误, 我在这里做错了什么?请帮我 问题答案: 不要将文件传递到构造函数中,而应使用append,例如:

  • 问题内容: 我定义了以下实体: 尽管有表注释,我仍然收到。如何防止将诸如EmailTemplate之类的实体类转换为email_template表名? 编辑: 我正在使用Spring Boot:启动JPA。在我的build.gradle文件中 问题答案: Spring默认使用带下划线的驼峰案例名称分割。尝试在中设置。