【问题标题】:Button onclick not calling function按钮 onclick 不调用函数
【发布时间】:2015-05-14 03:55:30
【问题描述】:

我的按钮代码如下所示:

<button onclick="submitFunction()">Submit</button>

而我的函数代码是这样的:

function submitFunction() {
    alert("example");
}

我一直在网上寻找答案并尝试了很多方法,但似乎没有任何效果。我只是将警报放在那里,看看是否正在调用该函数。 我正在使用以下链接文件。

<script src="file.js"></script>

【问题讨论】:

  • 它会起作用,在脚本文件中的某些地方可能有语法错误
  • 试着把你的js文件放在你有html的同一个文件夹里,它应该可以工作
  • 在您的代码&lt;script src="file.js"&gt;&lt;/script&gt; 中评论这一行并检查它是否有效?
  • 文件在同一个文件夹中,我已经多次检查拼写以确保它匹配。我还更改了 .js 文件的名称,因为它曾经与 .html 名称相同。他们需要保留单独的文件,因为这是家庭作业。我之前已经将其他 .js 文件链接到 .html 文件,但我似乎无法弄清楚为什么这两个文件无法链接。

标签: javascript html button onclick


【解决方案1】:

我也遇到了同样的问题,然后意识到我没有在脚本标签中给出正确的类型属性,而不是给出标签:

type="text/javascript"

我是这样给出的:

type="text/script"

【讨论】:

    【解决方案2】:

    如果您的函数恰好在全局范围内,请尝试在函数前添加window.。像这样:

    &lt;button onclick="window.submitFunction()"&gt;Submit&lt;/button&gt;

    function submitFunction() {
        alert("example");
    }
    

    这对我有用。

    我见过其他人指定按钮类型,然后在函数后添加return false,如下所示:

    &lt;button type="button" onclick="window.submitFunction(); return false;"&gt;Submit&lt;/button&gt; 这对我没有任何改变,但它可能适用于你的情况。你可以试试看。

    【讨论】:

      【解决方案3】:

      如果它在将来对任何人有帮助,当遇到这样的链接问题时,我发现它对:

      1. 将 HTML 链接添加到文件 &lt;a href="file.js"&gt;file.js&lt;/a&gt; 并在浏览器中单击它以查看它会将您带到哪里。
      2. 使用“./”"./file.js" 提醒它在当前目录中查找(前提是它肯定在当前目录中)(出于某种奇怪的原因,它有时似乎有所帮助——或者我疯了——这更有可能.)

      【讨论】:

        【解决方案4】:

        在你的外部 js 文件的最开始给出你的函数。

        【讨论】:

          【解决方案5】:

          相反,您可以在脚本标记中调用 jquery 并在外部调用函数。

          例如:

          $("button").on("click",function(){alert("hi")})
          

          【讨论】:

          • 这是作业,我不能使用 jquer。我的作业甚至不是关于这个功能,我只是无法将我的 js 文件链接到我的 html 文件,并且要求将 js 代码放在单独的文件中。
          【解决方案6】:

          您必须在&lt;head&gt; 标记之间编写以下javascript 代码,并确保您给定的javascript 文件具有valid path

          JavaScript

          <script type="text/javascript">
            function submitFunction() {
                alert("example");
            }
          </script>
          

          Demo

          【讨论】:

          • 这是作业,js代码需要在单独的文件中。问题似乎与 .js 相关,即使它们位于同一个文件夹中并且一切正常。
          【解决方案7】:

          可能浏览器找不到您的外部 js 文件,因为路径错误。尝试将函数放在页面的&lt;head&gt; 部分,如果有效,问题是 js 文件的路径错误。

          【讨论】:

          • 我将函数添加到 html 头部并且它有效,但我检查了文件名并且它匹配。这些文件位于同一文件夹中。 .html 和 .js 文件同名是否重要?
          • 不,它们可以有不同的名称。您可以使用 Firebug 检查错误并进行调试。
          猜你喜欢
          • 2020-09-28
          • 2014-12-22
          • 1970-01-01
          • 2019-11-06
          • 2021-11-30
          • 1970-01-01
          • 2019-01-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多