javascript链接onclick到.js到文件

时间:2011-02-24 17:22:08

标签: javascript buttonclick

我创建了一个.js文件,然后将其包含在HTML页面中:

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

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

我知道它会是这样的:

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

但我无法弄清楚......

8 个答案:

答案 0 :(得分:8)

如果你正在使用JQuery,你可以这样做,

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

这将在按钮被cliked时下载JS文件并执行内部调用的函数。

答案 1 :(得分:7)

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

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

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

<input type="button" onclick="myFunction(); return false;" value="Click me!" />

答案 2 :(得分:1)

要调用外部文件中的函数,请确保首先加载文件,然后按照正常情况调用它(只要它将自己暴露给您需要它的范围)。

答案 3 :(得分:0)

使用

在页面中包含外部java脚本文件(最好在head标记中)
<script type="text/javascript" src="yourexternalfile.js"></script>

然后你可以调用js文件中定义的任何函数

答案 4 :(得分:0)

使用<script type="text/javascript" src="">导入页面内的js文件。

答案 5 :(得分: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

答案 6 :(得分:0)

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

答案 7 :(得分:0)

我建议在JS文件中添加on-click事件,如下所示:

HTML:

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

JS档案:

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

这样您就可以从Javascript文件中编写元素。 只需将其置于您调用的函数中即可。