【问题标题】:Fire Button on Hyperlink Click [duplicate]超链接上的触发按钮单击[重复]
【发布时间】:2018-03-26 18:20:49
【问题描述】:

我的表单有两个按钮:deleteplay。目前,用户必须使用表单底部的提交按钮来执行这些任务中的任何一个。我想用onclick 函数在页面顶部添加一个超链接,该函数会触发相应的提交按钮。

这就是我正在使用的。目前,超链接根本不起作用。

页面顶部的超链接:

<a href='#' onlick='document.getElementById('playlist').click()'>test</a>

这是我的表单及其提交按钮。

<form id = 'allverses' name= 'allverses' action='' method='POST'>
<button name="delete" type="SUBMIT" class="deletebutton" id="delete" value="delete" action="POST">
<button name="playlist" type="SUBMIT" class="playbutton" id="playlist" value="play" action="POST">
</form>

【问题讨论】:

  • 我可以看到的主要错误是您对标签和标签内的字符串使用了相同的引号。尝试交替,将 playlist 放在双引号或转义引号 \'
  • 你有一个错字:你的链接有onlick而不是onclick
  • 使用可以纠正您的语法的工具。 Visual Studio Code 就可以了
  • 您首先需要遵守语法约定,这样就不会发生这些错误

标签: javascript html


【解决方案1】:

语法错误:

  1. onlick 应该是 onclick。
  2. 按钮结束标记未正确设置。

使用正确的语法,以下代码可以正常工作。

<a href='#' onclick="document.getElementById('playlist').click();">test</a>

<form id='allverses' name='allverses' action='' method='POST'>
<button name="delete" type="SUBMIT" class="deletebutton" id="delete" value="delete" action="POST" />
<button name="playlist" type="SUBMIT" class="playbutton" id="playlist" value="play" action="POST" />
</form>

【讨论】:

  • 这似乎是问题代码的复制/粘贴。您为什么将其发布为答案?
  • 有一些语法错误,我更正了,现在可以正常工作了。
  • 也许您可以解释问题,而不是用找不同游戏的形式来表达您的答案。 (如果问题是由拼写错误引起的,那么它应该作为题外话关闭并且无论如何都不回答)。
  • 谢谢!这似乎成功了。
  • 在 HTML 中,允许放置一个 / 和一个布尔元素的结尾(这完全没有意义,但它可以防止代码对那些在编写 XHTML 时养成习惯的人无效) . &lt;button&gt; 元素不是布尔元素,/ 是不允许的并且结束标记是强制​​性的。如前所述,输入lick 而不是click 的错字问题应作为题外话关闭,不予回答。
猜你喜欢
  • 2014-07-14
  • 2015-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多