在<a href=""></a>函数中调用Javascript函数

时间:2014-09-05 22:43:22

标签: javascript html

我正在尝试调用一个javascript函数,该函数根据a href标记中的当前DateTime生成变量。该变量将被添加到URL的末尾。

然而,它并不像我想要的那样工作。我需要做些什么才能使其正常工作?

<script type="text/javascript">   

    function newNumber() {
        c = (new Date()).getTime();
        return c;
    }

</script>

<a href="https:www.something.com&id= + javascript:newDisney()" >Click Here</a>

2 个答案:

答案 0 :(得分:1)

以下是您应该如何在现代浏览器上执行的操作:

JS

function myUrlFunction(e){
 e.preventDefault();
 window.location='https://www.something.com/?id='+Date.now()
}
function myUrlSetup(){
 document.getElementById('myLink').addEventListener('click',myUrlFunction,false);
}
window.addEventListener('load',myUrlSetup,false);

HTML

<a href="#" id="myLink">Click Here</a>

演示

http://jsfiddle.net/xv09rjsn/

如果您有任何问题,请询问

如评论中所述......

如果你想在这里支持所有浏览器就是代码,无论如何都有无限的方式来编写它。 &#39;#&#39;在以下代码中是相对的...

function myUrlFunction(){
 window.location='https://www.something.com/?id='+(new Date().getTime());
 return false
}
function myUrlSetup(){
 document.getElementById('myLink').onclick=myUrlFunction
}
window.onload=myUrlSetup

你不要在html属性中使用javascript ...创建一个适当的功能,这是一个轻松的可持续性,为你的目的做正确的算法。并将其应用于链接,按钮,图像,事件!或者你想要的任何东西。

如果您真的想在重定向之前替换元素href属性而不仅仅替换myUrlFunction

function myUrlFunction(){
 var link=document.getElementById('myLink');
 link.href='https://www.something.com/?id='+(new Date().getTime());
 link.click();// works on some browsers.
 return false
}

如果你有任何问题,请问。

答案 1 :(得分:-1)

有很多方法可以做到这一点。例如: 的 HTML

<a id="ref" href="https:www.something.com&id=" >Click Here</a>

<强>的javascript

var ref = document.getElementById("ref");
ref.href += newNumber();
alert(ref.href);

function newNumber(){
    c = (new Date()).getTime();
    return c;
}

点击此链接jsfiddle查看有效示例。希望它有用!