2013-02-13 61 views
1

我想執行一個PHP代碼時,給定鏈路上的用戶點擊,我試過下面的代碼運行從一個鏈接PHP代碼,而不重定向

<!DOCTYPE html> 
<html> 
<head> 

<script type="text/javascript" src="jquery.min.js"></script> 
<script type="text/javascript"> 
function doSomething() { 
$.get("up.php"); 
return false; 
} 
</script> 


    </head> 

    <body> 

    <center> 
    <a href="#" onclick="doSomething();">Click Me!</a> 


    </center> 

    </body> 
    </html> 

其中up.php是一個PHP代碼實現android GCM機制similer到鏈接中的一個:GCM with PHP (Google Cloud Messaging)

但不幸的是,當鏈接被點擊時什麼也沒有發生,PHP代碼沒有執行,只有頁面的url改變形式*****。com /test.html以*****。com/test.html#,並通過我已經測試的PHP代碼和它的工作正常,所以它不是在PHP代碼中的問題,所以我錯過了這裏?爲什麼代碼沒有執行?

+0

我已經嘗試了所有的解決方案如下,但其中不工作對我來說是jQuery庫是不是在我的代碼可能包含問題, 任何想法?你確定, – OpEtMaR 2013-02-13 12:08:33

+0

,up.php沒有得到執行?在執行up.php時,嘗試在日誌文件中寫入內容。你寫它的方式,up.php可能會被執行,但你不會對up.php的結果做任何事情...... – cypherabe 2013-02-13 13:54:05

回答

1

我找到了解決辦法,

0

有時,您可能需要從鏈接中調用一些JavaScript。通常,當用戶點擊鏈接時,瀏覽器會加載一個新頁面(或刷新同一頁面)。

這可能並不總是可取的。例如,您可能只想在用戶單擊鏈接時動態更新表單域。

爲了防止刷新負載,可以使用JavaScript void()函數並傳遞一個0(零)參數,如下所示。

<a href="JavaScript:void(0);" onclick="return doSomething(); " />Click Me!</a>

現在,如果你想使用的href = 「#」,確保總的onclick包含return false;底。

OR

使用href="javascript:void(0)"你正在使用jQuery

0

。 $ .get()將如下所示。

$.get('ajax/test.html', function(data) { 
$('.result').html(data); 
alert('Load was performed.'); 
}); 

進一步幫助檢查http://api.jquery.com/jQuery.get/

0

您還可以使用jQuery Load

function doSomething() { 
$('#result').load('up.php', function() { 
    alert('Load was performed.'); 
}); 
} 
0

當您使用Jquery應該是:

function doSomething(){ 
    $.get('up.php', function(data) { 
     $('.data').html(data); 
    }); 
} 

鏈接

要停止頁面清爽,你可以使用JavaScript無效()函數,並傳遞0

<a href="javascript:void(0);" onclick="return doSomething();">Click Me!</a>

<div class="data"></div> 

這個div參數是用來顯示up.php結果。