在href上执行javascript

时间:2011-06-01 18:07:31

标签: javascript asp.net html

我有一个asp网站,我正在尝试自动生成一些JavaScript。我有一个生成javascript的ashx文件,然后我想在href中使用这个javascript。 我已经在其他网站上看到了它,但无法弄清楚它是如何完成的。

名为'Hello.ashx'的ashx文件输出类似

的内容
alert("Hello World");

我正在尝试执行此操作,如下所示

<a href="Hello.ashx">Text</a>

这是怎么做到的?实际上是可能还是其他网站使用了一些技巧?

非常感谢您的帮助

1 个答案:

答案 0 :(得分:3)

您希望在单击锚点时加载javascript文件:

function loadjs() {
    var head = document.getElementsByTagName('head');
    var s = document.createElement('script');
    s.setAttribute('type', 'text/javascript');
    s.setAttribute('src', 'Hello.ashx');
    head[0].appendChild(s);
    return false;
}

<a href="javascript: loadjs()">Text</a>

如果你正在使用jQuery,更好的方法是:

<a href="Hello.ashx" id="hello">Text</a>

$(function(){ $('#hello').click(loadjs); });

加载一次:

var _myscript = null;
function loadjs() {
    if (_myscript != null) return false;
    _myscript = document.createElement('script');
    //...
}