【问题标题】:Trying to make two functions associate with one button using Type= and OnClick=尝试使用 Type= 和 OnClick= 使两个功能与一个按钮相关联
【发布时间】:2018-05-04 20:46:36
【问题描述】:

我正在处理一个提交按钮汇总表单的网页,但我还想按下该按钮来激活 JavaScript 功能,该功能将禁用“搜索”按钮并启用一个按钮来重置搜索字段并重新启用搜索按钮。这是当前按钮上的代码:

<input id="Search" type="submit" value="Search" onclick="SearchOff()"></input>

这是当前 JavaScript 函数背后的代码:

function SearchOff() {
     document.getElementById("Search").disabled = true;
     document.getElementById("Reset_Search").disabled = false;
     document.getElementById("[All other relevant fields]").disabled = true;
     var x = document.getElementsByTagName("form");
     x[0].submit();// Form submission
     return true;
}

(我已经匿名了应用程序的实际功能,但它只是将数据输入到由其他 JavaScript 处理的表单中)

JavaScript 确实有效,但当 onclick="SearchOff()" 在代码中时,type=submit 函数将被覆盖。有没有办法让这两个功能都起作用?正如你所看到的,我已经在 J​​S 代码的底部 2 行尝试过,但这是在代码中没有 onclick="SearchOff()" 的情况下完成的。我也试过没有这个,并且遇到了同样的问题。

如何让这两个功能同时工作?

【问题讨论】:

  • 谢谢,但这没有帮助。我在表单的开头尝试了
    ,得到了相同的结果。跨度>
  • @Abhijeetk431 我的表单的第一行现在看起来像这样:'
    ' (我也在尝试做相反的事情,即在按下重置按钮时启用搜索按钮和其他字段。这两个功能现在都可以使用,但是表单仍然没有提交. 你知道如何解决这个问题吗?

标签: javascript html forms button disabled-input


【解决方案1】:

我决定尝试从头开始重新输入公式,但出于某种原因,这在这种情况下奏效了。我认为关键是不要复制和粘贴任何实际公式,而只复制要搜索和计算的文本。这就是我所做的所有不同之处,我希望阅读本文对阅读本文的人有所帮助。

【讨论】:

    【解决方案2】:

    你试过thisidea吗?

    function searchOff(event) {
      //No submission yet.
      event.preventDefault();
    
      //Disable buttons.
      document.querySelector('[type=submit]').disabled = 'disabled';
    
      //Submit the form.
      document.querySelector('form').submit();
    }
    

    点击按钮时阻止表单提交,禁用需要禁用的按钮,然后自己提交表单。

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2020-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 2016-08-19
      • 2023-03-18
      • 2016-03-20
      相关资源
      最近更新 更多