2010-07-09 59 views
5

目前我已經在我的網頁之一下面的代碼頁面級調用兩個JavaScript的功能的onclick

<a href="http://ex.com" onclick="return popitup2()">Grab Coupon</a> 

現在我要運行它以下列方式使用一個以上的腳本 -

onClick="recordOutboundLink(this, 'Outbound Links', 'ex.com');return false;" 

現在有人能告訴我如何在鏈接被點擊時調用這兩種javacsripts。提前致謝。

回答

9

可以調用兩個功能在onclick事件處理程序:

<a href="http://ex.com" onclick="popitup2(); recordOutboundLink(this, 'Outbound Links', 'ex.com'); return false;">Grab Coupon</a> 

爲了避免與混合標記的JavaScript我建議你安裝的onclick事件爲這樣的特定鏈接:

<a href="http://ex.com" id="mylink">Grab Coupon</a> 

而在在head部分:

<script type="text/javascript"> 
window.onload = function() { 
    var mylink = document.getElementById('mylink'); 
    if (mylink != null) { 
     mylink.onclick = function() { 
      var res = popitup2(); 
      recordOutboundLink(this, 'Outbound Links', 'ex.com'); 
      return res; 
     }; 
    } 
}; 
</script> 
+0

我很確定你想返回'popitup2()'來維護OP的當前功能。 – 2010-07-09 07:40:24

2

在您的鏈接指定兩者:

<a href="http://ex.com" onclick="recordOutboundLink(this, 'Outbound Links', 'ex.com'); return popitup2();">Grab Coupon</a> 
+2

此語法似乎是錯誤的。你不能在'onclick'處理程序中有多個'return'語句,或者至少它不好。 – 2010-07-09 07:39:49

+0

@Darin Dimitrov:好點,已更新。謝謝 – Sarfraz 2010-07-09 07:41:03

+0

沒有在函數recordOutboundLink返回false將它以同樣的方式工作? – ayush 2010-07-09 08:12:33

1

你可以用一個封閉做到這一點:

<a href="http://ex.com" onclick="return function(){ recordOutboundLink(this, 'Outbound Links', 'ex.com'); return popitup2(); }()">Grab Coupon</a> 

或只是一些更好的排序:

<a href="http://ex.com" onclick="recordOutboundLink(this, 'Outbound Links', 'ex.com');return popitup2();">Grab Coupon</a>