2012-10-13 64 views
-4

我想類似下面HREF:運行的onclick PHP代碼之前重定向不使用JavaScript

<a href="http://www.someweb.com" onclick="somePHPcode">mylink 

當我點擊「myLink的」,我想重定向之前「跑「somePHPcode」 someweb.com」。

此外,「somePHPcode」是一個PHP函數調用或一些PHP命令運行時,單擊mylink時。

我不喜歡用href="javascript:void(0);"href="#" onclick="javascript..."

因爲我需要, 「someweb.com」 鏈接來viewd。

+0

請學習Ajax的! –

+0

你不能使用這個,因爲php是服務器端腳本語言 – Toretto

回答

2

PHP是服務器端代碼。 onClick事件發生在瀏覽器(客戶端)上,所以你不能這樣做。你必須在客戶端使用Javascript(也許可以運行PHP代碼的服務器的Ajax調用)。

1

您不能從onclick事件調用PHP函數,但是您可以調用ajax函數並執行您的代碼。其次,您可以使用簡單的表單提交來執行您的php代碼,然後重定向到您的新頁面。

0

您可以在您的javascript函數中使用top.location.href在處理函數後執行重定向。

<a href="http://www.someweb.com" onclick="javascript:return func();" id="redirect">mylink 

,並使用此JS:

function func(){ 
// Your code. Use AJAX if want to execute server side code. 

top.location.href= "http://www.someweb.com"; 
return false; 

} 

最好的辦法是使用click事件處理程序:

$("#redirect").click(function(){ 
//Your code logic or AJAX Call for server side logic 
    top.location.href= "http://www.someweb.com"; 
}); 
+0

你不應該使用內聯JavaScript代碼或'javascript:'協議。 – meagar

+0

@meagar是最好使用事件處理程序,但只保留代碼以方便閱讀新手=) –