6

我创建了一个.js文件,然后通过以下方式将其包含在 HTML 页面中:

<script type="text/javascript" src="yourexternalfile.js"></script>

如何使用 调用.js文件的功能onclick = "...."

我知道它会是这样的:

<input type="BUTTON" value="Exit" onclick="javascript: ???;" >

但我无法弄清楚...

4

8 回答 8

8

说你的功能是......

function myFunction() {
    alert("hello!");
}

触发器的一个例子是......

<input type="button" onclick="myFunction(); return false;" value="Click me!" />
于 2011-02-24T17:30:40.573 回答
8

如果您使用的是 JQuery,您可以这样做,

       <input type="button" onclick="javascript: $.getScript('../scripts/yourfilepath' , function (){ youFunctionCall() ; } );" />

这将在单击按钮时下载 JS 文件并执行其中调用的函数。

于 2011-02-24T07:11:24.393 回答
1

要在外部文件中调用函数,请确保首先加载该文件,然后按正常方式调用它(只要它将自身暴露在您需要的范围内)。

于 2011-02-24T06:58:48.003 回答
1

使用在您的页面中包含外部 java 脚本文件(最好在 head 标记中)

<script type="text/javascript" src="yourexternalfile.js"></script>

然后就可以调用js文件中定义的任意函数了

于 2011-02-24T07:01:36.687 回答
0

您是否尝试过实际输入函数的名称?像 onclick='myFunction()'

于 2011-02-24T17:31:48.530 回答
0

用于<script type="text/javascript" src="">在页面中导入 js 文件。

于 2011-02-24T07:02:18.667 回答
0

知道 JS 文件何时 (a) 加载,以及 (b) 完成执行是很棘手的,因为并非所有浏览器都支持它。

我相信您正在考虑以下问题:

var s = document.createElement("script"),
    f = document.getElementsByTagName('body')[0];
s.type = 'text/javascript';
s.src = "https://ajax.googleapis.com/ajax/libs/dojo/1.5.0/dojo/dojo.xd.js";

s.addEventListener("load", function() {
   console.log("script loaded");
});

f.appendChild(s);

就像我上面提到的,它不适用于所有浏览器。即使是这样,如果您实际上是在尝试基于动态拉入的 JS 执行一些代码,它对您也不是很有用。

加载依赖项时执行某些操作的唯一可靠方法是将该依赖项包装在函数中。这样,当浏览器解析该 JS 时,它将执行该函数,这将让您知道您可以开始使用您想要引入的任何内容。这正是 JSONP 以它的工作方式工作的原因。

如果这是您想要做的,请查看RequireJS

于 2011-02-24T07:14:54.293 回答
0

我建议在 JS 文件中添加点击事件,如下所示:

html:

<input type="button" id="myButton"/>

JS文件:

var myButton = document.getElementById('myButton');
        myButton.onclick = function(){myFunction()};

这样您就可以从 Javascript 文件中对元素进行编程。只需将其放入您调用加载的函数中。

于 2016-07-04T08:50:09.343 回答